SubversionのWindowsクライアント TortoiseSVNの使用方法

Subversionクライアントとして、Windowsのエクスプローラから作業を行えるようにします。

Visual Studioを使用しているならばVisualSVNを導入することで、Visual Studio上から作業を行うことも可能です。

ダウンロード

tortoisesvn.tigris.org

作業手順

基本的な作業手順は、次のようになります。

  1. リポジトリを作成する。 >>
  2. リポジトリレイアウトを決定する。(リポジトリにフォルダを作成する) >>
  3. 既にプロジェクトが存在しているならば、データをリポジトリにインポートする。 >>
  4. リポジトリからチェックアウトして、作業コピーを作成する。 >>
  5. バージョン管理すべきでないファイルを、無視リストに追加する。 >>
  6. 作成した作業コピーに対して作業を行う。
  7. 作業コピーの更新を確認して、リポジトリにコミットする。 >>

TortoiseSVNにマニュアルがあります。フリーウェアとは思えないほどに質が高いです。
PDF版のマニュアルはTortoiseSVN - Supportにあります。

属性 (Property) の設定

ファイルやフォルダの属性を、エクスプローラのプロパティから設定できます。

属性の一覧 (一部)
分類属性説明
Subversion
プロパティ
svn:externals外部参照するプロジェクト
svn:ignore無視リスト
TortoiseSVN
プロパティ
tsvn:longinsizeログメッセージの長さの最小値
 (適切なメッセージの入力を強制)
tsvn:lockmsgminsizeロックメッセージの長さの最小値
 (適切なメッセージの入力を強制)
tsvn:logwidthmarkerログメッセージの行の最大長
 (メッセージ入力時に、最大長を示すマーカを表示する)
tsvn:logtemplateログメッセージのテンプレート
 (メッセージ入力時に、テンプレートとして自動で挿入される)

設定対象のファイルやフォルダのコンテキストメニューのプロパティから、Subversionタブを開きます。そして[属性]ボタンをクリックします。

エクスプローラのSubversionタブ
エクスプローラの【 プロパティ → Subversionタブ 】

Subversionの属性
設定されている属性の一覧

属性ダイアログで[新規]ボタンをクリックすると、[属性を追加]ダイアログが開きます。ここで右上のコンボボックスから属性名を選択し、テキストボックスに属性値を入力して属性を設定します。

なお[属性を再帰的に適用する]にチェックを入れることで、フォルダ以下にあるサブフォルダとファルにも同属性を設定できます。

Subversion 属性名の一覧

利用する差分ビューアの変更

TortoiseSVNには標準で差分ビューア (TortoiseMerge) が付属していますが、設定から利用するビューアを変更することができます。

TortoiseSVN 外部差分ビューアの設定
【設定 → 差分ビューア】

外部のビューアで差分を表示するためには、それを起動する際にコマンドラインオプションで比較するファイル名などを指定する必要があります。例えばWinMergeを利用するならば、次のように設定します。

"C:\Program Files\WinMerge\WinMergeU.exe" -ub -dl %bname -dr %yname %base %mine
コマンドラインのパラメータ
パラメータ置換後の値
%base変更前ファイル名
%bnameウィンドウタイトル
%mine変更後ファイル名
%ynameウィンドウタイトル
WinMergeのコマンドライン パラメータ

ログメッセージの変更

ログメッセージへの変更は元には戻せないため、デフォルトでは変更が禁止されています。これを許可するにはリポジトリフォルダのhooksフォルダに、[pre-revprop-change.bat]というバッチファイルを以下のように作成します。

if "%4"=="svn:log" (
  if "%3"=="UserName" (
    exit 0
  )
)
exit 1

UserNameに許可するユーザー名 (Windowsならばログオンに使用している名前) を指定します。
ちなみにコード中の定数は下記のような意味を持ちます。

意味説明
1REPOS-PATHthe path to this repository
2REVISIONthe revision being tweaked
3USERthe username of the person tweaking the property
4PROPNAMEthe property being set on the revision

詳しくは、SubversionドキュメントHook Scriptsのにあます。

エクスプローラの詳細表示にバージョン管理の報を表示

エクスプローラ上にリビジョン番号などを表示することでファイルの管理を容易にします。

表示を[詳]「の設定から表示項目を選択します。
@IT:Windows TIPS -- Tips:エクスプローラの[]示カスタマイズする

エクスプローラの詳細表示
エクスプローラでの情報表示と、その設定画面

利用例