Mercurial-何时使用更新

Mercurial-何时使用更新,mercurial,merge,Mercurial,Merge,何时使用更新与合并?如果我从远程存储库中进行拉取,我会读到,我必须进行更新才能将这些更改放到我的工作目录中。但其他时候,我在阅读,我必须做合并 我是否希望总是在拉取后进行更新,然后仅在存在冲突时进行合并 我在这里不明白什么? 是关于使您的工作目录与给定的修订版相同 hg merge不会将您的工作目录重置为给定的修订版(它仍然引用相同的版本),但会将另一个修订版中的更改合并到您当前的工作目录中 因此,在拉入之后,hg更新将更改您的工作目录,以反映您拉入存储库的内容。 但是hgmerge不会重置您

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

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

我在这里不明白什么?

  • 是关于使您的工作目录与给定的修订版相同
  • hg merge不会将您的工作目录重置为给定的修订版(它仍然引用相同的版本),但会将另一个修订版中的更改合并到您当前的工作目录中
因此,在拉入之后,hg更新将更改您的工作目录,以反映您拉入存储库的内容。
但是hgmerge不会重置您的工作目录,只会合并您的工作目录和您所拉取的内容之间的更改

hg pull-u
将进行拉取和更新,拒绝合并或覆盖本地更改

  • 如果拉式回购在你的回购中增加了一个新的头,你将需要合并
添加了1个更改集,其中1个更改为1个文件(+1个头) (运行“hg头”查看头,“hg合并”合并)
  • 如果在回购协议中没有添加新的头,一个简单的更新就足够了

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


通常,当您在本地进行提交时,它会在拉取时分叉树。在这种情况下,您必须始终合并(或使用重新基础扩展重新基础)。如果您有未提交的本地修改,那么当您拉入时,您可以将更改更新并合并到您的工作区中。

虽然这在技术意义上是正确的,但请理解,拉入并更新到未提交(脏)的工作目录将失去mercurial的许多好处。如果您有有有意义的更改,请先提交这些更改,以免损坏上下文并可能丢失合并中的工作。 added 1 changesets with 1 changes to 1 files (+1 heads) (run 'hg heads' to see heads, 'hg merge' to merge)