在推送到主克隆之前从另一个克隆与我自己的克隆合并?

use*_*114 2 mercurial

我正在开发一个由mercurial控制的版本的项目.

我有一个克隆.我的朋友有一个克隆.

我的朋友对他的克隆进行了一些更改,然后将它们推送到主克隆.我已经对我的克隆做了一些更改,并准备推送到主克隆.但是,在推送到主克隆之前,我想将他的更改合并到我自己的克隆中(我认为这是正确的方法吗?)

我怎样才能做到这一点?

谢谢

Mar*_*ing 7

不要害怕合并.当我们必须合并分支时,我们中的许多人在cvs上削减了我的牙齿.Mercurial的分支和合并是自然而简单的.

  1. 将所有更改提交到您当地的hg
  2. hg pull 从主仓库中获取所有新节点,在您的情况下,这些将成为一个新的头
  3. hg merge 创建当前工作文件状态作为两个父节点的合并
  4. 用于hg resolve -l列出任何冲突的文件,然后编辑它们直到您满意为止
  5. 用于hg resolve -m 将已修复的文件标记为已解决
  6. 用于hg commit实际提交两个父节点的合并
  7. 使用hg push让您的朋友让他们的副本

记住变更集中的mercurial交易.变更集只是某个时刻项目快照状态的另一个名称.通常,每个变更集都有一个父变更集,即状态所基于的先前已提交状态.合并操作是个例外,这是特殊的,因为它有两个父变更集.

每个变更集都有零个或多个子变更集.如果它没有子项,则变更集是"头".如果它有超过1个孩子,那么它代表了一个不同的发展分支.