[an error occurred while processing this directive] [an error occurred while processing this directive]
Last modified: 2000年8月13日

pcl-cvs パッケージ

現在執筆中。

Emacs では VC を使うことで編集作業を行いながら簡単にCVSを利用することができる。 VC は各バッファ(ファイル)ごとのバージョン管理をサポートする。 それに対して Emacs の pcl-cvs パッケージはあるディレクトリの中の各ファイルの状態をチェックしたり、操作を行なったりできるものである。

pcl-cvs のパッケージでは info 形式でマニュアルが提供されているのでこちらも参照して欲しい。

pcl-cvs を動かす

まず pcl-cvs をインストール。 これについては pcl-cvs のドキュメント等を参照。

Emacs で M-x cvs-update と入力すると

CVS Update (directory): ~/

(~/ はカレントディレクトリ)と聞いてくるので、ここで checkout 済みの作業ディレクトリを指定する。 すると *cvs* というバッファに pcl-cvs の copyright 表示と、指定したディレクトリの update のレポートが表示される。 サブディレクトリがあれば、そのサブディレクトリ以下も再帰的に出力される。

各行には

(*) 状態 (ci) ファイル名

の4つの項目が表示される。 * は mark されているファイルにのみ表示される。 また ci は check in の必要がある場合に表示される。

状態には以下の種類がある。

意味
Updated Update された
Patched patch により Update された
Modified 作業ディレクトリ内のファイルに変更が加えられている。
Merged コンフリクトすることなく merge された。
Conflict merge で conflict がおきた。
Added 自分によって追加されている。ただし check in する必要がある。
Removed 自分によって削除されている。ただし check in する必要がある。
Unknown リポジトリにない作業ディレクトリにだけあるファイル。
Removed from repository
Removed from repository, changed by you
Removed by you, changed in repository
Move away FILE - it is in the way
This repository is missing! Remove this dir manually.

操作する

*cvs* バッファの各ファイルの状態を示している行の上で以下のようなコマンドを実行できる。

キーバインド 昨日
gcvs update の再実行
SPCカーソルを進める
C-n
n
C-pカーソルを戻す
p
mマークする
uマークを外す
M全てのファイルをマークする
<ESC> <DEL>全てのマークを外す
<DEL>前の行のファイルのマークを外しその行へ移動
c必要のある全てのファイルを check in
fファイルを開く
oファイルを別ウィンドウで開く
AChangeLog の編集
lcvs log
scvs status
a選択されているファイルを追加
r選択されているファイルを削除
U変更を破棄し、リポジトリの最新版に戻す
x
C-k
i
d
b
e
R