Repo Browser を使用せずに、また 2 つの独立した追加/削除操作を作成せずに、ファイルまたはフォルダーを同じリポジトリ内のある場所から別の場所に移動したいと考えています。Repo Browser の使用は正常に機能しますが、サポートする変更 (.csproj ファイルなど) を後でチェックインするまで、コードが壊れた状態でハングすることを除きます。
更新: 人々は、コマンド ラインから「移動」することを提案しました。TortoiseSVN に相当するものはありますか?
Repo Browser を使用せずに、また 2 つの独立した追加/削除操作を作成せずに、ファイルまたはフォルダーを同じリポジトリ内のある場所から別の場所に移動したいと考えています。Repo Browser の使用は正常に機能しますが、サポートする変更 (.csproj ファイルなど) を後でチェックインするまで、コードが壊れた状態でハングすることを除きます。
更新: 人々は、コマンド ラインから「移動」することを提案しました。TortoiseSVN に相当するものはありますか?
を使用してファイルまたはファイルのセットを移動するにはTortoise SVN
、目的のファイルを右クリックして移動先にドラッグし、マウスの右ボタンを離します。ポップアップ メニューにはSVN move versioned files here
オプションがあります。
SVN move versioned files here
オプションが表示されるには、宛先フォルダーがリポジトリーに既に追加されている必要があることに注意してください。
svn move
— ファイルまたはディレクトリを移動します。
In Windows Explorer, with the right-mouse button, click and drag the file from where it is to where you want it. Upon releasing the right-mouse button, you will see a context menu with options such as "SVN Move versioned file here".
TortoiseSVN については、次のページを参照してください: http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-copy.html
ファイルを移動して csproj ファイルを最新の状態に保ちたい場合、最も簡単な方法は AnkhSVN のような Visual Studio プラグインを使用することです。これにより、移動アクション (削除 + 履歴付きの追加として、Subversion が機能するため) と .csproj の変更の両方が自動的にコミットされます。
コマンド ラインから、次のように入力できますsvn mv path1 path2
。これにより、追加操作と削除操作が作成されますが、私の知る限り、Subversion ではそれを回避する方法はありません。
Subversion にはまだファースト クラスの名前変更操作がありません。
この問題には 6 年前のバグがあります: http://subversion.tigris.org/issues/show_bug.cgi?id=898
マージ トラッキング (優先度の高い) が (1.5 で) 追加されたため、1.6 での使用が検討されています。
Tortoise の RENAME コマンドを使用して、相対パス ("folder/file.ext") を入力します。
コマンドを使用して、svn move
ファイル/フォルダーを移動します。
前述のとおり、追加コマンドと削除コマンドを作成します。作業コピーまたはリポジトリ URL の両方で svn move を使用できます。作業コピーを使用する場合、変更はコミットされません。別の操作でコミットする必要があります。
URL を svn move する場合、 --message を指定する必要があり、変更はすぐにリポジトリに反映されます。