- branch を作る
$ cvs tag -b branch-hoge
- branch で作業する
$ cvs update -r branch-hoge
- branch での変更を trunk に持ってくる
trunk 側で
$ cvs update -kk -j branch-hoge
これで,branch-hoge から, branch-hoge の最新版までの差が
trunk 側に適用される.
イメージとしては
$ diff "branch-hogeの初版" "branch-hogeの最新版" | patch
を想像すると良い.
- trunk側でcommitする
$ cvs ci -m "Merge changes from branch-hoge"
- trunk側にtagを打つ
$ cvs tag merged-from-branch-hoge
- branch 側にtagを打つ
$ cvs tag branch-hoge-2
こうしておくと,次回 branch-hoge の枝の修正を trunk に取り込む場合は,trunk側で
$ cvs update -kk -j branch-hoge-2 $ cvs ci -m "Merge changes from branch-hoge-2"
とすれば良い.これも,イメージとしては
$ diff "branch-hoge-2" "branch-hogeの最新版" | patch
と考えると解りやすい(気がする).