2009-11-23 92 views
55

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

是否有任何区别:

hg branch blah 
hg up blah 

hg bookmark blah 
hg up blah 

为什么我会使用书签,它与指定的分支有什么不同?

+1

作为一个侧面说明:您可以*您开始在分支上工作后,应用书签到分支*。如果你已经开发了一些东西,这可能会有所帮助,但是必须回到较旧的版本并开始开发一些不相关的东西(例如,因为你的团队领导告诉你)。在这种情况下,您可以为第一个分支添加一些有意义的名称。 – 2015-02-24 11:05:06

回答

51

书签是自动前进到后续更改的标签,不会在以前将书签指向它们的变更集上留下任何标记。另一方面,命名分支是不可改变的标记,它们是变更集的一部分。多个磁头可以位于同一分支上,但同一个书签只能指向一个磁头。命名的分支被推回/从回购到回购,书签不会旅行。

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

+26

1.文章已更新:“从Mercurial 1.6书签可以在存储库之间推送和拉取。” 2.这解释了差异,但不是为什么你想要使用另一个 – Casebash 2010-09-09 12:08:46

+3

差异应该有助于你选择哪种模型最适合你,并且每个模型都有明确的折衷。你想让你的分支名字永远留在身边吗?使用命名分支。等等 – 2010-09-09 14:20:34

+7

mercurial维基说,命名分支是“长期生存的发展分支”。所以,我会为new-major-release创建分支,但为fix-bug-XXX分支使用书签。 “ – 2010-12-19 13:41:27