代码之家  ›  专栏  ›  技术社区  ›  Greg

Mercurial-何时使用更新

  •  15
  • Greg  · 技术社区  · 16 年前

    何时使用更新与合并?如果我从远程存储库中进行拉取,我会看到我必须进行更新才能将这些更改保存到我的工作目录中。但有些时候我读到我必须合并。

    我是否希望总是在拉取之后进行更新,然后仅在存在冲突时进行合并?

    我在这里不明白什么?

    2 回复  |  直到 8 年前
        1
  •  17
  •   ataylor    16 年前

    如果您有本地提交:合并。如果您有未提交的本地修改:更新(将合并)。

    通常,当您在本地提交时,它会在您拉动时分叉树。在这种情况下,您总是必须合并(或与REBASE扩展名重新平衡)。如果您有未提交的本地修改,那么当您拉动时,您可以更新并将更改合并到您的工作区中。

        2
  •  15
  •   Vadim Kotov First Zero    8 年前
    • hg update 是关于使您的工作目录与给定的修订版相同
    • hg merge不会将您的工作目录重置为给定的版本(它仍然引用相同的版本),但会将另一个版本的更改合并到当前的工作目录中。

    所以在拉后,hg更新会 改变 您的工作目录,以反映您已将哪些内容放入存储库中。
    但是hg merge不会重置您的工作目录,只会合并您的工作目录和所提取内容之间的更改。

    hg pull -u 将提取并更新,拒绝合并或覆盖本地更改。

    • 如果拉动在回购中添加新的头,则需要合并
    added 1 changesets with 1 changes to 1 files (+1 heads)
    (run 'hg heads' to see heads, 'hg merge' to merge)
    
    • 如果“拉”在回购中没有新的头,那么一个简单的更新就足够了。
    推荐文章