最初, 戻る, 進む, 最後, 目次 に行く。


8.1 枝全体をマージする

update コマンドに `-j branch' フラグを付けると、 枝 branch に加えられた変更を作業コピーに反映することができます。 `-j branch' オプションは、 枝の分岐点と枝の最新リビジョン間の違いを、 あなたの作業コピーにマージします。

`-j' は、"join" とは違います。

次のリビジョン・ツリーを考えます。

+-----+    +-----+    +-----+    +-----+
! 1.1 !----! 1.2 !----! 1.3 !----! 1.4 !      <- The main trunk
+-----+    +-----+    +-----+    +-----+
                !
                !
                !   +---------+    +---------+
Branch R1fix -> +---! 1.2.2.1 !----! 1.2.2.2 !
                    +---------+    +---------+

枝 1.2.2 には `R1fix' というタグ (文字列) が付けられています。 次は `m.c' というファイルを含むモジュール `mod' の例です。

$ cvs checkout mod               # 最新のリビジョン 1.4 を取り出す。

$ cvs update -j R1fix m.c        # 枝で行なわれた変更 (リビジョン 1.2
                                 # と 1.2.2.2 の差分) を作業コピーに追加。

$ cvs commit -m "Included R1fix" # リビジョン 1.5 を作成。

以上で衝突が起きることもありますが、その場合は、 衝突を解決してから新しいリビジョンを格納して下さい (「6.3 衝突の例」参照。)

checkout コマンドでもフラグ `-j branch' を使用できます。 次のようにして上記と同じ結果が得られます。

$ cvs checkout -j R1fix mod
$ cvs commit -m "Included R1fix"


最初, 戻る, 進む, 最後, 目次 に行く。