記載日:2007/03/17
Windows XP SP2 TortoiseSVN 1.4.1, Build 7992

1.ファイルを管理対象から除外する。(svn:ignore)

Subversion では、特定のフォルダを対象にして管理することになりますが、必ずしもフォルダの内容全てを Subversion の管理下に置きたいとは限りません。例えば管理下に置いたこのフォルダが、 実行時に作成される一時ファイルや、ログファイルも出力されるフォルダだったり、 ビルドファイルを出力するためのフォルダなどがこれにあたると思います。 これら自動で蓄積されていくファイルや頻繁に再生成されるファイルについては目的にもよりますが、無くなっても困らないもので、差分を見ることもないと思います。

この種のファイルを Subversion の管理下に置くのは、 リポジトリの無駄遣いや管理上の手間になってしまうので、管理対象から除外しておくのがよいと思います。 Subversion で特定のファイルやフォルダを管理下から外すには、 svn:ignore 属性を利用して対象外とするファイルやフォルダの名前を指定します。

2.(準備)管理対象を確認する

2-1.現在の管理対象を確認する

現在の管理対象を確認右の図は、 TortoiseSNV を使用して、 Subversion の管理下に置かれたフォルダを選択して、新しいリソースを追加しようとした時の一覧です。

今回の場合、"profaim.profaim.base_20070203.log" と "profaim.profaim.base_20070204.log" がログファイルです。 日々蓄積されていくため、その度に追加対象として表示されてしまうのが煩わしいので、管理下から除外することにしました。

3."svn:ignore" 属性で 特定ファイルを管理対象から除外する

3-1.フォルダに属性を設定する

属性を指定除外したいファイルが置かれているフォルダ上で右クリックして、「TortoiseSVN」から「属性」を選択します。

今回は、ログファイルが "profaim.web\profaim.base.data\log" に保存されているので、 "profaim.web\profaim.base.data\log" 上で右クリックしてメニューを選択しました。

3-2.フォルダに属性を追加

属性追加属性ダイアログが表示されるので、"svn:ignore" が一覧に無いことを確認して、 「追加」ボタンを押します。

"svn:ignore" が既に設定されている場合は、それを一覧から選択して「編集」する流れになります。

3-3.svn:ignore属性を追加

svn:ignore選択属性追加ダイアログが表示されるので、右上の属性名リストから "svn:ignore" を選択します。

3-4.svn:ignore属性を追加

属性値指定属性名を選択したら、属性値の欄に除外したファイルまたはフォルダのパターンを指定します。

今回は、"profaim.profaim.base_20070203.log" と "profaim.profaim.base_20070204.log"の2つのファイルを除外したいのですが、 厳密には "(ウェブサイト名).profaim.base_(年月日).log" という名前のパターンで日々増えていくファイルなのでパターンで指定することにしました。

不定の部分は "*" で指定できるので、"*.profaim.base_*.log" と指定することで今回除外したいログファイルもこれから蓄積されていくログファイルも除外させることができます。

3-5.svn:ignore属性設定完了

属性設定完了属性を追加ダイアログで 「OK」 を押すと、その内容が属性の一覧に表示されます。

以上で、特定のファイルを Subversion 管理下から除外する設定は完了です。

4.(確認)設定後の管理対象を確認する

4-1.svn:ignore属性設定完了

管理対象からの除外を確認右の図は、最初(1.1)の確認と全く同じ手順で新しいリソースを追加しようとした時の一覧です。

最初の図と比較すると、 svn:ignore を設定したため、"profaim.profaim.base_20070203.log" と "profaim.profaim.base_20070204.log" が管理下から除外されていることがわかります。