普段、誰かが作ったファイルに手を加えるときは、もとの ファイルをこうやって丸ごとコピーするると思います。
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 (世界標準時)を使っているらしいので、気にしないでください。
登録時に、なるべく丁寧にコメントを書いておけば、再利用する人に 対して親切になります。
なお、登録されたプロジェクトに、さらにサブディレクトリがあった場合は、 ディレクトリ階層をまとめて復元します。