http://www.sodan.org/~penny/vc/cvs-ja_5.html#SEC54
CVS--Concurrent Versions System v1.11.17: Branching and merging
プロジェクトAとプロジェクトBがブランチされていなければ、cvsでの差分取得は不可能です。
ブランチされていれば差分抽出は
cvs diff -r プロジェクトA -r プロジェクトB
適用(マージ)方法は
cvs update -j ブランチA -j ブランチB
です。
差分と言うことはプロジェクトAとプロジェクトBは似通っていると言うことであり、cvsで管理するならブランチで管理すべきです
何らかの理由でブランチで管理していない場合、unixコマンドで一つ一つのファイルに対し
diff -n プロジェクトA プロジェクトB > diff.txt
echo w >> diff.txt
ed プロジェクトB < diff.txt
と行うぐらいしか考えつきません。
ありがとうございます!
diffを使う場合は、
$ diff -r projectB_dir projectA_dir > project.diff
$ cd projectB_dir
$ patch -p1 < ../project.diff
で、ディレクトリ丸ごとの比較とパッチの適用ができます。
#この作業を行う場合は、projectB_dirのバックアップを取っておくこと。
ありがとうございます!