ファイル・フォルダのコピー・移動・名前変更

既存ファイルを、リポジトリ内の別プロジェクトに持っていかねばならないことがしばしばあり、単純にコピーしたくなると思います。既に述べたように、単純にコピーした上で、そのファイルを追加することもできますが、それまでの履歴を失ってしまいます。また、後でオリジナルファイルにバグ修正を行った場合、Subversion 内で新しいコピーがオリジナルと関連付いている場合に限り、自動的に修正をマージできます。

ファイルやフォルダを、もっとも簡単に作業コピーからコピーする方法は、右ドラッグメニューを使うことです。ファイルやフォルダを、ある作業コピーから他の作業コピーや同じフォルダへ 右ドラッグ すると、マウスのボタンを放すと同時にコンテキストメニューが現れます。

図4.27 バージョン管理下のディレクトリに対する右ドラッグメニュー

バージョン管理下のディレクトリに対する右ドラッグメニュー


これで既存のバージョン管理下の内容を、新しい場所にコピーできました。必要なら同時に名前の変更もできます。

作業コピーにあるバージョン管理下のファイルや、ふたつの作業コピーの間で、慣れたカット & ペーストでもコピーや移動を行えます。バージョン管理下のファイルをクリップボードにコピーするには、Windows 標準の コピー切り取り を行ってください。クリップボードにバージョン管理下のファイルがある状態では、TortoiseSVN貼り付け を利用し (注意: Windows 標準の 貼り付け ではありません)、新しい作業コピーの場所にコピーや移動できます。

TortoiseSVNブランチ/タグ を利用して、ファイルやフォルダを作業コピーからリポジトリの別の場所にコピーできます。詳細は、「ブランチ・タグの作成」 をご覧ください。

コンテキストメニューリビジョンから分岐/タグを生成 を利用して、ログダイアログにあるファイルやフォルダの旧バージョンをリポジトリの新しい場所へ、ログダイアログから直接、コピーできます。詳細は、「追加情報の取得」 をご覧ください。

また、リポジトリブラウザを用いて、お好みの場所に配置したり、リポジトリから直接作業コピーにコピーできます。さらにリポジトリ内の 2 つの場所の間でコピーできます。詳細は 「リポジトリブラウザ」 をご覧ください。

リポジトリ間のコピーはできません

リポジトリ内 のファイルやフォルダはコピーできますが、TortoiseSVN を用いて履歴を保持したまま、リポジトリから別のリポジトリへコピーや移動はできません。リポジトリが同じサーバにあったとしても不可能です。できるのは、現在の状態の内容をコピーし、別のリポジトリに新しい内容として追加することだけです。

同じサーバの 2 つの UR Lが、同じリポジトリか違うリポジトリかがはっきりしない場合、リポジトリブラウザを使用してひとつ URL を開き、そのリポジトリルートがどこにあるか探してください。どちらの場所も、ひとつのリポジトリブラウザウィンドウにある場合、それは同じリポジトリにあります。