蛙の井戸見聞記 Pretty frog in a well who knows nothing of the great web ocean!

~~ 好奇心は猫をも殺す Curiosity Kills the Cat ~~ ♪欲しいモノ・食べたいモノ・ネットで集めた情報と日々の記録の倉庫♪ Logging my life... Since 2003.12  

編集の変遷の記録管理を行うバージョン管理システムCVSを使い始める。

個人で使うときのCVS

  • 最初に使うときに管理用のディレクトリを作成する必要あり。
setenv CVSROOT ${HOME}/CVS_DIR  #これは、.tcshrcなどに設定しておく
mkdir CVS_DIR
cvs init 

新たなファイルの一群(プロジェクトあるいはモジュールと呼ぶようだ)をCVS管理にしたいとき、それを管理用ディレクトリに登録(リポジトリを格納と言うらしい)する。そのファイル一群の存在するディレクトリの名前をprojectnameとすれば

cvs import -m "Comment for Project" projectname myname atfirstversion
  • 以後、管理登録したファイル群(プロジェクト)は、「取りだし→編集→格納→終了」という作業で、バージョン管理がなされる。
  • 管理ファイル群はディレクトリの下にまとめて存在していれば、どんなファイルでも(C言語TeXperl、どんなものでも)平気なようだが、バイナリファイル(画像ファイルとか)は、オプションをつけて保存したりといろいろ注意しないといけないようで、テキストファイルだけをCVSで扱う方が無難なようだ。
  • 登録後は、そのディレクトリをアーカイブ化して別途保存して、登録したディレクトリは削除するか名前を変えてから、以下の作業をしないと、ファイルが壊れたりする・・・らしい。

登録ファイル群の取りだし(チェックアウトする)

cvs checkout -d directory_for_working projectname
オプションで、-r "versionname"や-D "2004-10-01"などをつけるとそのバージョンを取りだせる。
  • その後:取りだしたファイル群へ、適宜、普通に作業をする。

新たなファイルを作成して、それを登録したいとき

cvs add filename

以前あったファイルを消去したときには、

cvs remove filename

以上二つをやってファイル群リストを変更しておかないと、下記のファイル群登録の時にファイルがちゃんと格納されない。


ファイルの変更・作成・消去具合を表示

cvs update -P -d


管理用ディレクトリの最新版に変更(つまり、個人で使っている場合は、下記のcommitコマンドを最後に打った状態まで戻すことになる?)

cvs update 


現状の状態を覚えておくためのバージョンマークをつける(記憶用のタグをつける)

cvs tag "versionname"

あるバージョンと現状の比較

cvs diff -r "version" filename

ある日付のものとの比較

cvs diff -u -D "2004-10-01"

現状で取り出されているプロジェクトを表示

cvs history

現状を表示

cvs status


編集したファイルの変化を管理用ディレクトリに反映させる(コミットする )

cvs commit -m "just OK"


取りだしたファイル群を破棄する(作業の終了(保存はしない・保存するときは「コミット」してからreleaseする))

cvs release -d directory_for_working