dan*_*ann 23 mercurial branching-and-merging
有两个分支,我如何找到两个分支合并的最新版本?是否有标准的Mercurial命令来做到这一点?
这与如何在SVN中找到两个分支的共同祖先的问题相同?,但对于Mercurial而不是颠覆.
我不明白为什么Lazy Badger的答案是对的,所以我不得不做一点画,现在我明白了:
当两个分支合并时,它们实际上并未"合并",但是来自一个分支的更改将集成到第二个分支中.这意味着合并提交仅属于原始分支,而不属于合并分支.这就是合并修订是祖先修订的两个孩子之一的原因.
这可能是最好看的图片:
default o----o----a---b---o---o
\ \
other `-o---o---m---o
ancestor(default,other) == a
children(ancestor(default,other)) == (b,m)
children(ancestor(default,other)) and merge() == m
Run Code Online (Sandbox Code Playgroud)
Laz*_*ger 19
hg log -r "children(ancestor(default, Cleanup)) and merge()" --template "{rev}\n"
Run Code Online (Sandbox Code Playgroud)
是默认和清理分支的最新合并(Tim Henigan的答案的抛光版).
归档时间: |
|
查看次数: |
5323 次 |
最近记录: |