Mercurial分支和书签

vir*_*tor 61 mercurial branch bookmarks

我阅读了有关命名分支和使用书签的一些信息.不幸的是,我仍然没有看到它们之间的区别.有没有?

之间有什么区别:

hg branch blah
hg up blah
Run Code Online (Sandbox Code Playgroud)

hg bookmark blah
hg up blah
Run Code Online (Sandbox Code Playgroud)

为什么我会使用书签,它与命名分支有什么不同?

Ry4*_*ase 58

书签是自动向前移动到后续更改的标记,在以前具有指向它们的书签的更改集上不留下任何标记.另一方面,命名分支是不可磨灭的标记,它们是变更集的一部分.多个磁头可以位于同一个分支上,但同一个书签一次只能指向一个磁头.命名分支从repo推送/撤回到repo,书签不会传播.

这里有一个很好的分支比较:http://stevelosh.com/blog/entry/2009/8/30/a-guide-to-branching-in-mercurial/

  • 1.文章更新:"从Mercurial 1.6开始,可以在存储库之间推送书签." 这解释了差异,但不是为什么你想要使用一个而不是另一个 (28认同)
  • mercurial wiki说,命名分支是为了"长期生存的发展分支".所以,我会为new-major-release创建分支,但是为fix-bug-XXX分支使用书签. (8认同)
  • 差异应该有助于您选择最适合您的模型,并且每个模型都有明确的权衡.你想让你的分支名称永远存在吗?使用命名分支.等等. (3认同)
  • @DanPassaro:我认为你读错了那句话.它说没有一个书签可以同时指向多个提交(这对我来说似乎非常明显,但对于那些Mercurial经验较少的人来说可能并不明显). (2认同)