CVSの作業の実際

前のページで,CVSのプロジェクトをつくりました. そのあとどうすれば良いでしょうか.
作業の流れ
  1. プロジェクトをチェックアウトする.
  2. 作業をする(ソースの書き換え.ファイルやディレクトリの追加削除 改名.etc)
  3. プロジェクトをチェックインする.
  4. 作業ディレクトリを削除する.
タグをつける/ バージョン番号をあげるとき

チェックアウト

作業ディレクトリ作成

とりあえずチェックアウトしましょう。 プロジェクトを登録したディレクトリをそのまま使うことができません (プロジェクトを登録したディレクトリで作業をしてはい けません). 同じディレクトリで作業をしようとする場合,昔のディレクトリは削除(もしく はrename)をする必要があります.

この作業の結果、cvsを実行したディレクトリの下に、programのディレクトリが作 成されます。

% cvs checkout [project_name]

アップデート

すでに作業ディレクトリがある場合, 他の人が他の所で行った変更を反映する必要があるので,ディレクトリ構造のトッ プで以下のコマンドを行いましょう.
% cvs update [project_name]


追加

ファイル,ディレクトリのとき

普通にファイルを追加することができます. ただ,チェックインするときに次の作業が必要になります.

commit するときに、「ファイル newfile.c を追加」 などとコメントするとよ いでしょう.

% cvs add [newfile.c]
% cvs commit [newfile.c]


削除

ファイルの場合

普通にファイルを削除することができます. ただし,チェックインのときに次の作業が必要になります. (実際にファイルがなくなっているときのみ,この作業は可能です.)

commit するときに「ファイルなんとかをかんとかに名称変更」と コメントすると よいでしょう.

% cvs remove [Old_Filename]
% cvs commit [Old_Filename]

ディレクトリの場合

まず、ディレクトリ内のファイルを全て削除します. その次に、親ディレクトリでupdateを行います.
% cvs remove  [file1 (file2 file3..)]
% cvs commit

% cd ..
% cvs update -P

改名

上記の削除と追加を組み合わせた方が良いでしょう. 具体的な手順としては,
% mv Old_Filename New_Filename
% cvs remove Old_Filename
% cvs add New_Filename
% cvs commit Old_Filename New_Filename

チェックイン

以下のコマンドを発行すれば良いでしょう.

% cvs commit [filename]

そう頻繁にチェックインすれば良いというものでもありません. コンパイルできない(動かない)状態で登録しても意味がないので, ある程度めどが立ったらチェックインするようにしましょう.

複数人でグループを形成している場合, どのタイミングでチェックインするかというルールを決めておく必要もあると思われます.


作業ディレクトリの削除

作業が終わったら普通に消してしまって,なんの支障もありません.

ただ,rm -r する前に、 cvs release で「モジュールの放棄の表明」をするのがよいでしょう。 もし変更が登録されていないファイルがあれば、指摘してくれます。

% cvs release -d [project_name]


タグをつける

作業が一段落したなら,この日のバージョンを一カ所にまとめておきましょう. tagをいっぺんにつけることで,今日この日の状態にのちに帰ることができます.

% cvs tag

この時つけた名前は,ファイルのバージョンと同様に使うことができます. 例えば,sample.cのバージョンが1.2のときにtagをつけたとすると, 以下のコマンドは同様に働きます.

% cvs diff -r 1.2 [sample.c]
% cvs diff -r tag_name [sample.c]

そのほか,

% cvs checkout -r tag_name [project_name]
などや
% cvs update -r tag_name
などもできるようになります.おお,タイムマシンのようだ!

(注意) CVSROOT/val-tagsに関するエラーが生じた場合,書き込み属性のある空 のCVSROOT/val-tagsをつくってやりましょう.

バージョン番号をあげる

人に見せても良いかな、と思ったとき、リビジョン(いわゆるバージョン番号) を1から2にしてみる.

% cvs commit -r 2.0
とすれば、リビジョン番号が2.0に変更される。 あと、状態もExp(実験段階)からStab(安定段階)に変更する.
% cvs admin -sStab