【问题标题】:Synchronize branches in mercurial在 mercurial 中同步分支
【发布时间】:2016-07-29 11:11:32
【问题描述】:

我有两个分支,AB。如何合并 A -> B 使两个分支完全相等,这意味着

  • 如果A中有文件,则在B中内容完全相同
  • 如果 A 中缺少文件,则在 B 中将找不到该文件

一个简单的合并工具“在合并冲突的情况下采取A”将处理额外的文件。删除 B 中的所有文件然后从 A 进行合并是否安全?

【问题讨论】:

  • 如果你在 B 中添加了一个在 A 中没有添加的文件怎么办?
  • @LasseV.Karlsen:那么合并后它不应该在B中。

标签: merge mercurial


【解决方案1】:

我是否正确理解您想要合并A -> B,使得结果合并M 等于A

为此,您可以使用 hg revert --all -r X 将整个工作目录设置为与修订版 X 中相同的目录。

hg up B
hg merge A

# This will also delete or add files as needed
hg revert --all -r A

# Whatever merge conflicts we got, we resolved them by
# using A's version, so let's mark all as resolved
hg resolve --mark --all

# Commit and compare the current commit to A
hg commit
hg diff -r . -r A  # identical

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-09
    • 2014-01-06
    • 1970-01-01
    • 2012-02-07
    • 1970-01-01
    • 1970-01-01
    • 2011-03-31
    • 2012-06-09
    相关资源
    最近更新 更多