mercurial - Mercurial 可以 merge 一个不是 head 的命名分支吗?

标签 mercurial merge branch

基本上,我有 dev 分支,我喜欢做的是在实现某些东西的同时创建一个功能分支,然后将其 merge 回来。所以会出现如下情况

 a
 b
 c
 d - dev
/ 
e
f - feature

由于 dev 不是 head,是否仍然可以将 dev 带到 feature 以便 dev 和 feature 都指向 f?

我很确定 git 可以很好地做到这一点,但似乎无法说服 Mercurial 这样做......

最佳答案

卡尔迈耶是对的。您正在考虑 git 用户,而 Mercurial 以不同的方式处理事情。

你可以按照 Carl 的建议去做,然后强制下一次提交在 dev 分支上。如果我看到它,我个人会觉得这相当令人困惑,因为 dev 分支中会出现不连续性。

我处理它的方法是将功能分支 merge 回:hg update dev && hg merge feature && hg commit -m 'Merge in the completed feature.'
这将导致如下图:

  a - dev
  b - dev
  c - dev
  d - dev
 /|  
e | - feature
f | - feature
 \|
  g - dev

对我来说,这清楚地说明了到底发生了什么。您为一个新功能分支并在完成后将其 merge 到 dev 分支中。在此期间没有在 dev 上进行其他提交的事实只是巧合,不必更改工作流程。

关于mercurial - Mercurial 可以 merge 一个不是 head 的命名分支吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1625660/

相关文章:

Mercurial/hg - 中止 : outstanding uncommitted merges

ms-access - 如何告诉 TortoiseHg 将 UTF-16 文件显示为非二进制文件?

mercurial - Tortoise HG - 在提交时添加标签

java - 组合不同arff文件的属性

svn - [SVN] : The concept of branch

python - Mercurial API : repo. changectx(change) 不存在!

python - Pandas 内部合并/连接返回所有行

java - Spring-Data JPA : save new entity referencing existing one

git - 我可以添加基于 Git 分支的 cordova 插件吗?

command-line - 如何在 mercurial 中通过命令行获取所有关闭的分支?