CVSリポジトリに記録された2つのタグまたは日付間の変更をXML形式のレポートファイルとして生成します。
重要: このタスクは、パス上にcvsが必要です。そうでない場合、エラーが発生します(Windowsではerror=2など)。<cvs>が機能しない場合は、作業対象のディレクトリでコマンドラインからcvs.exeを実行してみてください。また、このタスクはcvs実行ファイルがUnixバージョンと互換性があると想定しています。これは、CVSNTなどの一部の他のCVSクライアントでは完全に当てはまらず、そのような非互換クライアントを使用すると一部の操作が失敗する可能性があります。
このタスクは、CVSコマンドの出力をテンポラリディレクトリ内のファイルにキャプチャします。
| 属性 | 説明 | 必須 |
|---|---|---|
| startTag | レポートに含める変更の開始タグ。 | いずれか一方のみ必須 |
| startDate | レポートに含める変更の開始日付。 cvsコマンドの-D date_spec引数で受け入れられるすべての形式を受け入れます。 |
|
| endTag | レポートに含める変更の終了タグ。 | いずれか一方のみ必須 |
| endDate | レポートに含める変更の終了日付。 cvsコマンドの-D date_spec引数で受け入れられるすべての形式を受け入れます。 |
|
| destfile | 差分レポートを書き込むファイル。 | はい |
| ignoreRemoved | trueに設定すると、レポートには削除されたファイルは含まれません。Ant 1.8.0以降 |
いいえ;デフォルトはfalse |
cvsタスクから継承されたパラメータ| 属性 | 説明 | 必須 |
|---|---|---|
| compression | true( 3と同等)、 false、または 1から 9の間の数値(CVS -z#引数の可能な値に対応)。その他の値は falseとして扱われます。 |
いいえ;デフォルトは圧縮なし |
| cvsRoot | CVSROOT変数。 |
いいえ |
| cvsRsh | CVS_RSH変数。 |
いいえ |
| package | 分析対象のパッケージ/モジュール。 Ant 1.6以降 スペースで区切られた複数のパッケージが可能です。異なるモジュールに対応するエイリアスも可能です。名前の中にスペースを含むモジュールを指定する場合は、ネストされた <module>要素を使用してください。 |
いいえ |
| quiet | 情報メッセージの抑制。 | いいえ;デフォルトfalse |
| port | CVSがサーバーと通信するために使用するポート。 | いいえ;デフォルト2401 |
| passfile | パスワードを読み込むパスワードファイル。 | いいえ;デフォルト~/.cvspass |
| failonerror | コマンドが0以外の戻りコードで終了した場合、ビルドプロセスを停止します。 |
いいえ;デフォルトはfalse |
作業対象のパッケージ/モジュールを指定します。この属性を使用して指定されたモジュールは、名前の中にスペースを含めることができます。
| 属性 | 説明 | 必須 |
|---|---|---|
| name | モジュール/パッケージの名前。 | はい |
タグANT_14とANT_141の間でantモジュールに対して行われたすべての変更に関するtagdiffレポートを生成します。これらの変更をtagdiff.xmlファイルに書き込みます。
<cvstagdiff cvsRoot=":pserver:anoncvs@cvs.apache.org:/home/cvspublic"
destfile="tagdiff.xml"
package="ant"
startTag="ANT_14"
endTag="ANT_141"/>
2002年1月にantモジュールに対して行われたすべての変更に関するtagdiffレポートを生成します。変更をtagdiff.xmlファイルに書き込みます。この例では、cvsRootは設定されていません。現在のcvsRootが使用されます(CVSに保存されているフォルダーからビルドが開始されていると仮定します)。
<cvstagdiff destfile="tagdiff.xml"
package="ant"
startDate="2002-01-01"
endDate="2002-31-01"/>
2003年1月にantとjakarta-gumpモジュールに対して行われたすべての変更に関するtagdiffレポートを生成します。変更をtagdiff.xmlファイルに書き込みます。この例では、cvsRootは設定されていません。現在のcvsRootが使用されます(CVSに保存されているフォルダーからビルドが開始されていると仮定します)。
<cvstagdiff destfile="tagdiff.xml"
package="ant jakarta-gump"
startDate="2003-01-01"
endDate="2003-31-01"/>
Antには、XML出力に基づいてHTMLレポートを生成するために使用できる基本的なXSLTスタイルシートが含まれています。次の例は、XMLレポートからHTMLレポートを生成する方法を示しています。
<style in="tagdiff.xml"
out="tagdiff.html"
style="${ant.home}/etc/tagdiff.xsl">
<param name="title" expression="Ant Diff"/>
<param name="module" expression="ant"/>
<param name="cvsweb" expression="https://cvs.apache.org/viewcvs/"/>
</style>
<tagdiff>要素のcvsroot属性とpackage属性は、Ant 1.6以降追加されました。
<entry>属性の説明
| 属性 | コメント |
|---|---|
| name | 1つのパッケージに関するレポートの場合、パッケージ名は出力から削除されます。 |
| revision | レポート期間の終了時に存在するファイルに対して提供されます。 |
| prevrevision | レポート期間の開始時に存在するファイルに対して提供されます。 古いCVSサーバーは、削除されたファイルに対しては提供しません。CVS 1.12.2は提供します。 |
例
<?xml version="1.0" encoding="UTF-8"?>
<tagdiff startTag="ANT_14" endTag="ANT_141"
cvsroot=":pserver:anoncvs@cvs.apache.org:/home/cvspublic" package="ant">
<entry>
<file>
<name>src/main/org/apache/tools/ant/DirectoryScanner.java</name>
<revision>1.15.2.1</revision>
<prevrevision>1.15</prevrevision>
</file>
</entry>
</tagdiff>