Subversion キーワードの展開
Rev.2を表示中。最新版はこちら。
概要
SubversionではCVSと同様にソースコード中に$Date$,$Rev$などの特定キーワードを埋め込んでおき、commit時にキーワードを置換させることでcommit日付、Rev情報などをソースに自動で埋め込むことができる。使用できるキーワードを表1に示す。
表1 使用できるキーワード
キーワード |
説明 |
---|---|
Date |
commit日付 置換例:$Date: 2006-08-09 13:15:41 +0900 (Wed, 09 Aug 2006) $ |
Revision |
commitした時のリポジトリのRevision 置換例:$Rev: 38 $ |
Author |
commitしたユーザー名 置換例:$Author: tomita $ |
HeadURL |
ファイルのURL 置換例:$HeadURL: http://svn.xxxx.xxx/Repos/trunk/foo.c $ |
Id |
ファイル名、Rev、日付、ユーザー名を組み合わせた形式 置換例:$Id: foo.c 38 2006-08-09 13:15:41 tomita $ |
ソース中に埋め込む場合は、$Date$のように'$'で囲んで使用する。
実際に使う
CVSではキーワードをソースコードに埋め込めば自動的に置換されたが、Subversionではどのキーワードを置換するかあらかじめファイルごとに指定しておく必要がある。これは、各ファイルのsvn:keywords属性に設定する。
foo.cにDate,Author,Revの置換をするように設定したい場合は以下のようにする。
# svn propset svn:keywords "Date Author Rev" foo.c
設定内容の確認は以下のようにしてできる。
# svn propget svn:keywords foo.c Date Author Rev
以上のようにsvn:keywordsを設定しておけばcommit時にキーワードが置換されるようになる。
以下のファイルをcommitすると、
/* * $Date$ * $Rev$ * $Author$ */以下のように置換される。
/* * $Date: 2006-08-09 13:15:41 +0900 (Wed, 09 Aug 2006) $ * $Rev: 38 $ * $Author: tomita $ */