AとBは同じリポジトリのクローンだったようです。その場合は、おそらく分岐が必要です。を含む履歴がある場合A:
C:\example>hg glog --template "rev{rev}:{desc}\r\n"
@ rev6:change7
|
o rev5:change6
|
o rev4:change5
|
o rev3:change4
|
o rev2:change3
|
o rev1:change2
|
o rev0:change1
あなたBが元々正しかったのにrev0、あなたがそれrev1を欲しがっrev3てrev5追加したのなら、あなたはそれに更新してrev1移植することができます:rev3rev5
C:\example>hg update 1
0 files updated, 0 files merged, 5 files removed, 0 files unresolved
C:\example>hg glog --template "rev{rev}:{desc}\r\n"
o rev6:change7
|
o rev5:change6
|
o rev4:change5
|
o rev3:change4
|
o rev2:change3
|
@ rev1:change2
|
o rev0:change1
C:\example>hg graft 3 5
grafting revision 3
grafting revision 5
C:\example>hg glog --template "rev{rev}:{desc}\r\n"
@ rev8:change6 <--- contains change 1, 2, 4, 6
|
o rev7:change4
|
| o rev6:change7 <--- contains changes 1-7.
| |
| o rev5:change6
| |
| o rev4:change5
| |
| o rev3:change4
| |
| o rev2:change3
|/
o rev1:change2
|
o rev0:change1
Aチェンジセットの重複と少しの事前計画を回避するために、両方とBブランチに必要な変更をチェックインしBてマージするAことができますが、Aにのみ属するチェンジセットはAに直接チェックインできます。
C:\example>hg glog --template "rev{rev}:{branch}:{desc}\r\n"
@ rev8:A:change7 <--- contains changes 1-7.
|
o rev7:A:Merge
|\
| o rev6:B:change6 <--- contains change 1, 2, 4, 6
| |
o | rev5:A:change5
| |
o | rev4:A:Merge
|\|
| o rev3:B:change4
| |
o | rev2:A:change3
|/
o rev1:default:change2
|
o rev0:default:change1