Previous: , Up: Customizing VC   [Contents][Index]


28.1.13.3 CVSに特有のオプション

変数vc-cvs-global-switchesで、すべてのCVS操作に渡す追加のコマンドラインオプションを指定できます。これらのスイッチはcvsコマンドの直後、呼び出す操作名の前に挿入されます。

リモートマシンのCVSリポジトリーを使用する場合、VCはネットワークでの通信を最小にしようと試みます。これは変数vc-cvs-stay-localにより制御されます。他の変数vc-stay-localもあり、これはCVSを含む、それをサポートする他のバックエンドにもこの機能を有効にします。以下ではvc-cvs-stay-localについてだけ説明しますが、すべてvc-stay-localにも適用できます。

vc-cvs-stay-localonly-file(デフォルト)の場合、VCはローカルのCVSサブディレクトリーのエントリーと、前のCVSコマンドから戻された情報だけを使って、各ファイルのバージョンコントロール状態を決定します。結果として、あなたがファイルを変更しているとき、他の誰かが他の変更をチェックインした場合、それのコミットを試みるまで衝突を通知されません。

vc-cvs-stay-localnilに変更した場合、ローカルのリポジトリーと同じように、vc-next-action (C-x v v)が何を行うか決定するに、VCはリモートのリポジトリーに問い合わせを行います。

vc-cvs-stay-localに、リポジトリーのあるホスト名にマッチする正規表現を指定することもできます。この場合、ホスト名がパターンにマッチしたときは、VCはローカルに留まります。

リモートのリポジトリーを使用する場合、Emacsは通常、編集された各ファイルのオリジナルバージョンである、自動バージョンバックアップ(automatic version backups)を作成します。これらのローカルのバックアップは、変更を最初にファイルに保存したときに作成され、リポジトリーに変更をコミットした後で削除されます(これらは通常のEmacsのバックアップファイルとは異なることに注意してください。 Backupを参照してください)。 C-x v =C-x v uのようなコマンドは、ネットワークへのアクセスを避けるため、可能な場合は自動バージョンバックアップを使用します。

vc-cvs-stay-localnilにセットすることにより、自動バージョンバックアップの作成を無効にできます。

自動バージョンバックアップは、file.~version.~という形式の名前をもちます。これはC-x v ~が古いバージョンを保存するときの名前と似ています (Old Revisionsを参照してください)。 例外は、バージョンの後ろにある追加のドット(‘.’)です。関連するVCコマンドは、これら両方の種類のバージョンバックアップを使用できます。主な違いは、C-x v ~により“手動”で作成されたバージョンバックアップは、コミットしたとき自動的に削除されないことです。

デフォルトでCVSはロックを使用しませんが、CVSREADまたはwatchの機能を使用して、ロックのような振る舞いを有効にする方法があります。詳細については、CVSのドキュメントを参照してください。そのような場合、ロックベースのバージョンコントロールシステムで行うように、EmacsでC-x v vを使用して、ロックを切り替えることができます (VC With A Locking VCSを参照してください)