次: , 前: Getting Notified, 上: Watches


10.6.3 監視下にあるファイルの編集方法

監視下にあるファイルを取り出した場合、 読み込みだけが許可されるため、単純に編集はできません。 読み書きを可能にし、そのファイルを編集する意図を他の人に伝えるために、 cvs edit コマンドを使用して下さい。 上記の作業を checkout と呼ぶシステムもありますが、 cvs ではこの用語をソースのコピーを得る (取り出す) という意味で用います (see Getting the source)。 他のシステムでは、この操作は get とか fetch と呼ばれます。

— コマンド: cvs edit [options] files ...

作業ファイル files を編集する準備をします。 cvs は files の読み書きを許可し、 files に対する edit 通知を求める使用者に通知します。

cvs edit コマンドに、 cvs watch add コマンドと同じ options を使用すれば、 一時的に files を監視することができます。 cvs は、 files が unedit もしくは commit されたときに、 監視を止めます。 通知を受けたくない場合には、`-a none' を指定して下さい。

files や引数指定時の振舞いは、 cvs watch の場合と同じです。

注意: PreservePermissions オプションがリポジトリで使用 可になっていると (see config)、CVS はどの files の使用許可も 変更しません。この変更の理由は `cvs edit' の使用が CVS リポジトリ のファイル使用許可を保管する機能と干渉しないようにするということです。

変更を全て終了したら、通常は cvs commit を用いて、 監視下にあるファイルの変更点を格納し、 読み込みだけが許可された状態に戻します。 しかし、途中で変更を止めたり、何も変更しないと決めた場合には、 cvs unedit コマンドを使用します。

— コマンド: cvs unedit [-lR] files ...

作業ファイル files に加えた変更を捨て、 変更前のリポジトリのバージョンに戻します。 files に対して、cvs watch on による通知要求がある場合、 cvs は files の読み込みだけを許可します。 また files に対する unedit 通知を求める使用者に通知します。

files や引数指定時の振舞いは、 cvs watch の場合と同じです。

ファイルが監視されてないときにはおそらく unedit コマンドが動作しないため、 リポジトリのバージョンに戻したい場合は、ファイルを削除してから cvs update で新たにコピーを取得して下さい。 これは厳密には同じ意味ではなく、削除して更新した場合には、 あなたが最後に更新した後にリポジトリに加えられた変更も付随します。

cvs のクライアント/サーバを使用していて、 サーバとうまく接続できなかった場合でも、 cvs edit や cvs unedit コマンドが使用できます。 次に cvs コマンドが成功した時に、 一緒に通知が行なわれます。