我对分布式版本控制系统有点陌生,所以我读了Mercurial手册,我了解的是标记特性可以用来标记发行号,例如一个名为v1.0和另一个v1.1的标记,等等。
至于分支,它们将用于添加新功能,而不会干扰其他开发人员,然后在一切正常后将其与默认分支合并。
对吗?
请告知。谢谢。

最佳答案

听起来你主要是从Git的人那里得到答案,他们也几乎了解Mercurial。
核心区别在于,在git中,分支名称并不是变更集的一个组成部分——它正好是变更集现在所在的位置。在mercurial中,一个命名分支的名字永远是它的一部分。这使得那些对git的了解超过了对mercurial的了解的人说出两个不太正确的事情之一:
命名分支应该在每个特性的基础上使用——在Mercurial中使用每个特性的命名分支没有问题,但是因为这些分支名称永远不会消失,所以您的hg branches输出会变得很大。
Mercurial中的分支并不像Git中那样轻量级——Mercurial中的命名分支并不像Git中那样轻量级(它们是永久的),但这就是为什么它不是特性的标准。mercurial中的匿名分支比git的命名分支更轻量级,mercurial中的书签分支与git分支完全相同。
所有这些都在史蒂夫洛什的Guide to Branching in Mercurial中得到了完美的阐述,最初的答案是oj(我投了更高的票)。
总而言之:
吉特
发布:标记
特征:分支
开发线(稳定的等):独立的存储库
多变:
发布:标记
功能:书签或匿名分支
开发线(稳定的等):指定的分支
当然,任何一种工具都可以以任何一种方式使用——它更多的是关于规范,而不是关于“正确”。

08-27 22:44
查看更多