19

これはtortoiseSVNで可能ですか?:

svn:externalsタグは常にフリーズします

シナリオでは、トランクは常に外部に「HEAD」リビジョンを使用しますが、「タグ」を作成するときは、特定の時点で外部に適切に「フリーズ」するように外部にリビジョンを設定する必要があります。

アップデート

フィードバック/情報をありがとうございました。

私たちのニーズを完全に満たすものが見つからなかったので(試しsmartsvnてみsvncopy.plました)、これまでのところすべてのテストケースに合格したコンソールアプリを作成しました。

大まかな概要:アプリはリポジトリのURLを取得し、すべての外部を検索して、それらの最後のコミットリビジョンを追加します。これを実行しsvn infoて「コミットリビジョン」を取得します。

アプリは、フォルダーと単一ファイルの外部の両方で動作します。

ソースコードと完全なセットアップファイルは次のとおりです: http ://svnxf.codeplex.com/

4

8 に答える 8

7

まったく同じ問題の解決策を探していたときに、今日この投稿を見つけました。最終的に、最新バージョンのTortoiseSVNは、この望ましい機能をサポートしていることがわかりました。TortoiseSVN1.7リリースノート

うまくいけば、これは同じ問題を調査するときにこの投稿を見つける他の人に役立つでしょう。

于 2013-10-09T17:57:40.403 に答える
6

推奨されるベストプラクティスは、外部定義で常に明示的なリビジョン(HEADではなく)を使用することです。ドキュメントから:

すべての外部定義で明示的なリビジョン番号を使用することを真剣に検討する必要があります。そうすることで、外部情報の別のスナップショットをいつプルダウンするか、正確にどのスナップショットをプルするかを決定できるようになります。…ソフトウェアプロジェクトの場合、これは、複雑なコードベースの古いスナップショットのビルドが成功した場合と失敗した場合の違いになる可能性があります。

質問に直接答えるには:いいえ、TortoiseSVNを使用してタグ付けするときに外部定義を自動的に変更することはできません。タグを作成するときに手動で行う必要があります。

于 2009-12-30T21:30:05.080 に答える
3

あなたはsvncopy.plを試すことができます(グーグルでそれを見つけてください)それはあなたの必要性に答えるperlスクリプトです。

于 2010-01-06T09:12:37.597 に答える
2

タグまたはブランチを作成するときに、オプションでHEAD外部を固定外部に変換するSmartSVNを試す必要があります。このオプション(外部​​リビジョン:(o)そのままにする()すべて修正する()以下を除く修正)は、[タグの追加]/[ブランチの追加]ダイアログの下部にあります。

于 2009-12-31T07:51:51.880 に答える
1

私はマイケルを2番目にします。

SVNドキュメントからの推奨に加えて:

  • svn:externalsで修正されていないリビジョンを使用すると、作業コピーを指定されたリビジョンに更新するのが難しくなります(バグ調査中など)。
  • svn:externalsを含むディレクトリのログは不完全になり、リビジョン間の変更セットに関する誤った情報を提供する可能性があります
  • 分岐とマージはより複雑になる可能性があります

一般的に、SVNは主に共通ディレクトリに含まれるコード用に設計されているようです。svn:externals(名前でも)が外部リポジトリーを参照するために追加されました。したがって、上記に加えて他の問題が予想されます。

私の経験では、修正されていないリビジョンにsvn:externalsを使用する必要があるのは、リポジトリ内の間違った構造に起因することがよくあります。

あなたの場合ではないかもしれませんが、私はこれらの点を考慮に入れることをお勧めします...

于 2010-01-06T10:30:56.590 に答える
1

アップデート

フィードバック/情報をありがとうございました。

ニーズを完全に満たすものが見つからなかったため(smartsvnとsvncopy.plを試してみました)、これまでのすべてのテストケースに合格したコンソールアプリを作成しました。

大まかな概要:アプリはリポジトリのURLを取得し、すべての外部を検索して、それらの最後のコミットリビジョンを追加します。「svninfo」を実行して「commitリビジョン」を取得します。

アプリは、フォルダーと単一ファイルの外部の両方で動作します。

ソースコードと完全なセットアップファイルは次のとおりです:http ://svnxf.codeplex.com/

于 2013-01-17T03:20:43.843 に答える
0

外部でリビジョンを指定できます。

third-party/skins -r148        http://svn.example.com/skinproj

svnbookを参照してください

于 2009-12-30T21:19:33.543 に答える
0

これはtortoiseSVN用ではないことはわかっていますが、Eclipseを破壊的に使用する場合は、プロジェクトを右クリックして[チーム]->[タグ]を選択できます。Subversiveはデフォルトで外部をフリーズし、プロパティを非常にうまくフォーマットします。

于 2010-12-23T22:49:24.577 に答える