CVS リポジトリから取得したパッケージ/モジュールを処理します。
重要: このタスクには、パス上にcvsバイナリが必要です。そうでない場合、エラーが発生します(Windowsではerror=2など)。<cvs>が機能しない場合は、作業対象のディレクトリでコマンドラインからcvs.exeを実行してみてください。また、このタスクはcvs実行ファイルがUnixバージョンと互換性があると想定しています。これは、CVSNTなどの一部の他のCVSクライアントでは完全に当てはまらず、そのような非互換クライアントを使用すると、一部の操作が失敗する可能性があります。
CVSNTに関する注意: CVSNTは、パスワードをレジストリに保存することを推奨しています。cvspassタスクとpassfile属性が機能しない場合、最も可能性が高い理由は、CVSNTが.cvspassファイルを完全に無視していることです。バグレポート21657で推奨される回避策を参照してください。
| 属性 | 説明 | 必須 |
|---|---|---|
| command | 実行するCVSコマンド。 | いいえ; デフォルトはcheckout |
| compression | true(compressionlevel= 3と同等)または false |
いいえ; デフォルトはfalse |
| compressionlevel | 1から 9までの数値(CVS -z#引数の可能な値に対応)。それ以外の値はcompression= falseとして扱われます。 |
いいえ; デフォルトは圧縮なし |
| cvsRoot | CVSROOT変数。 |
いいえ |
| cvsRsh | CVS_RSH変数。 |
いいえ |
| dest | チェックアウトされたファイルを配置するディレクトリ。これはCVSの-dコマンドラインスイッチとは異なり、Apache Antは空のディレクトリを避けるためにパス名を短縮することはありません。 | いいえ; デフォルトはプロジェクトのbasedir |
| package | チェックアウトするパッケージ/モジュール。注記: 複数の属性はスペースで区切ることができます。名前の中にスペースを含むモジュールを指定する場合は、ネストされた<module>要素を使用してください。 |
いいえ |
| tag | チェックアウトするパッケージ/モジュールのタグ。 | いいえ |
| date | 指定された日付以前の最新の改訂版を使用します。 | いいえ |
| quiet | 情報メッセージを抑制します。これはコマンドラインの-qと同じです。 | いいえ; デフォルトはfalse |
| reallyquiet | すべてのメッセージを抑制します。これはコマンドラインの-Qと同じです。Ant 1.6以降。 | いいえ; デフォルトはfalse |
| noexec | レポートのみ、ファイルは変更しません。 | いいえ; デフォルトはfalse |
| output | コマンドの標準出力をリダイレクトするファイル。 | いいえ; デフォルトはMSG_INFOとしてログに出力 |
| error | コマンドの標準エラー出力をリダイレクトするファイル。 | いいえ; デフォルトはMSG_WARNとしてログに出力 |
| append | ファイルをリダイレクトするときに、出力/エラーを追加するかどうか。 | いいえ; デフォルトはfalse |
| port | CVSがサーバーと通信するために使用するポート。 | いいえ; デフォルトは2401 |
| passfile | パスワードを読み取るパスワードファイル。 | いいえ; デフォルトは~/.cvspass |
| failonerror | コマンドが0以外の戻りコードで終了した場合、ビルドプロセスを停止します。 |
いいえ; デフォルトはfalse |
作業対象のパッケージ/モジュールを指定します。この属性を使用して指定されたモジュールは、package属性とは異なり、名前の中にスペースを含めることができます。
| 属性 | 説明 | 必須 |
|---|---|---|
| name | モジュール/パッケージの名前。 | はい |
cvsRoot属性によって示されるCVSリポジトリからantパッケージ/モジュールをチェックアウトし、ファイルを${ws.dir}に保存します。
<cvs cvsRoot=":pserver:anoncvs@cvs.apache.org:/home/cvspublic"
package="ant"
dest="${ws.dir}"/>
${ws.dir}に以前チェックアウトされたパッケージ/モジュールを更新します。
<cvs dest="${ws.dir}" command="update"/>
サイレントに(-q)、cvs add (-N) で追加された新しいファイルを含み、patchの入力として使用できる統一された(-u) 差分を含むpatch.txtというファイルを作成します。
<cvs command="-q diff -u -N" output="patch.txt"/>
<commandline>要素を使用した同等の例は次のとおりです。
<cvs output="patch">
<commandline>
<argument value="-q"/>
<argument value="diff"/>
<argument value="-u"/>
<argument value="-N"/>
</commandline>
</cvs>
または
<cvs output="patch">
<commandline>
<argument line="-q diff -u -N"/>
</commandline>
</cvs>
好きなだけ多くの<commandline>要素を含めることができます。それぞれは、<cvs>要素からfailonerror、compression、その他の「グローバル」パラメータを継承します。
スティッキービット(-A)を無視し、必要に応じて新しいディレクトリを作成(-d)して、リポジトリのヘッドから更新します。
<cvs command="update -A -d"/>
注記: コマンドのテキストはcvsに「そのまま」渡されるため、すべてのcvsオプションはコマンドの前に、コマンドオプションは上記のようにdiffの例のようにコマンドの後に表示する必要があります。CVSの書籍、特にCVSコマンドガイドを参照してください。