普段、誰かが作ったファイルに手を加えるときは、もとの ファイルをこうやって丸ごとコピーするると思います。
cp ~nishi/どこどこ/* .しかし、複数の人が自分の都合のよいようにプログラムを書き換えて いくと、バージョン管理が大変になります。最新バージョンが誰の手元にあるのかも わからなくなります。
CVS では、既存のプロジェクトを次のような操作で自分のホームディレクトリに 呼び出します。
cvs checkout (プロジェクト名) または cvs checkout -d (作業用ディレクトリ) (プロジェクト名)作業用ディレクトリの指定を省略すると、プロジェクト名と同じ ディレクトリがカレントディレクトリの下に作成されます。
実際に使用してみましょう。
nishitmp@langue[135]% cvs checkout -d test-cvs test-cvs cvs checkout: Updating test-cvs U test-cvs/Makefile U test-cvs/file1.c U test-cvs/file1.hコマンドを実行したディレクトリの下に test-cvs というディレクトリが できて、そこに3つのファイルが置かれました。 さらに CVS というディレクトリも作られました。
/* * $Log: $ */ #include "file1.h" void func() { int i; } void main() { printf( "hello, world!\n" ); } /* end of file */
nishitmp さんが checkout した file1.c をみてみましょう。
/* * $Log: file1.c,v $ * Revision 1.1.1.1 1996/12/10 09:07:10 nishi * CVSで管理します。作りはじめたばかりです。 * */ void func() { int i; } void main() { printf( "hello, world!\n" ); } /* end of file */時刻がへん、と思う人もいるかも知れません。が、どうやら GMT (世界標準時)を使っているらしいので、気にしないでください。
登録時に、なるべく丁寧にコメントを書いておけば、再利用する人に 対して親切になります。
なお、登録されたプロジェクトに、さらにサブディレクトリがあった場合は、 ディレクトリ階層をまとめて復元します。