例: cvs import project-a v1 r1
例: cvs add file-a
例: cvs checkout project-a
例: cvs update
例: cvs commit
これらのことはもちろん手操作でも行なうことが可能だが、できるだけ計算機 の手助けを受けて自動化をして、誤りを減らし、作業を効率化しようとするの が CVS である。
例: setenv CVSROOT :ext:jkcvs/jk/master ; setenv CVS_RSH ssh
管理を容易にするために、Repository の First level(及び Second Level) directory は管理者だけが作れるようにし、例えば、
などを作っておき、個々 Project はその下に作るのがよいのではないかと思 われる。(計算機上での加速器の名前、Linac 等、も早く決める必要がある。)First Level (Group 単位): Control Epics Linac RCS MR BT BL Second Level (Application 単位): ioc-app beam-app misc-app config
ただし、Epics の directory tree については KEKB または横断化 EPICS Group の CVS Repository を使用する方向で調整する。重複した作業を行なう のは無駄だと思われる。(しかし、Device Support や Extension 等で加速器 独自と思われる部分は、当初は通常の Application として開発し、他の Group で使用できるようになってきたら、Epics の Repository に移す。
Epics の Directory tree は加速器ごとに Config file などが多少異なるの で、Joint Project の Version をひとつの Branch として管理する。
cd {source directory 1} cvs import ioc-app/project1 v1 r1 (sources in/below current directory are imported) mkdir {development directory 1} cd {development directory 1} cvs checkout ioc-app/project1 (new directory ioc-app/project1 is created, and sources are copied into it) (if some modifications are made) cvs commit (new source file file1) cvs add file1 cvs commit cvs update (synchronize/incorporate changes from others) from remote machine setenv CVSROOT :ext:jkcvs/jk/master setenv CVS_RSH ssh (if you don't have cvs in your path, setenv CVS_SERVER /jhf/local/bin/cvs) cvs checkout ioc-app/project1 (password prompted, then new directory ioc-app/project1 and sources are created)
にある。その他には、http://www-linac.kek.jp/cgi-bin/info2www?(cvs-ja)
http://www.cvshome.org/ http://www.loria.fr/~molli/cvs-index.html