概要
S2JDBC-GenのGen-Ddlタスクは, バージョンごとのディレクトリにDDLファイルを生成します.
db └─migrate ├─0001 │ └─create │ └─010-table │ ├─employee.sql │ └─・・・ └─0002 └─create └─010-table ├─employee.sql └─・・・
新しいバージョンディレクトリに作成されるファイルは, 以前のバージョンディレクトリに作成されたファイルの新しいバージョンと位置づけられます. しかし,ファイルとしては別のものであるため, このままSubversionにコミットするとリビジョンの履歴をたどることが出来ません.
Gen-DdlのSVN拡張機能を利用すると,
新しいバージョンのファイルは以前のバージョンのファイルから
svn copy
で作成します.
これにより,リビジョンの履歴を追跡できるようになり,
リビジョン間の差分を確認することも容易になります.
設定
Gen-DdlのSVN拡張機能を使うには,
Antのビルドファイルで
Gen-Ddlタスク
のトップレベルパラメータ
genDdlListenerClassName
で指定します.
指定する値は,利用しているSubversion (SubclipseまたはSubversiveを使っている場合はJavaHLまたはSVNKit) のバージョン (ワーキングコピーの形式) により, 以下のいずれかになります.
Subversion/JavaHL | SVNKit | 値 |
---|---|---|
1.4.x | 1.1.x |
org.seasar.extension.jdbc.gen.extension.svn.GenDdlSvn14Processor
|
1.5.x | 1.2.x |
org.seasar.extension.jdbc.gen.extension.svn.GenDdlSvn15Processor
|
1.6.x | 1.3.x |
org.seasar.extension.jdbc.gen.extension.svn.GenDdlSvn16Processor
|
以下はSubversion 1.4形式のワーキングコピーフォーマットを使う場合の設定例です.
<gen-ddl classpathDir="build/classes" ... genDdlListenerClassName="org.seasar.extension.jdbc.gen.extension.svn.GenDdlSvn14Processor" />