如何在HG的分公司发展?

时间:2010-04-25 23:32:14

标签: version-control mercurial branch dvcs

我想在一个hg项目中做一些实验工作。所以我想创建分支,提交它。如果实验有效,我可以将它合并回主分支。

在git中,我可以做到

$ git branch experimental
$ git checkout experimental
(edit file)
$ git commit -a
$ git checkout master

我看过A Guide to Branching in Mercurial。它说hg branch feature。但是下一步是什么? 我不跟进。

3 个答案:

答案 0 :(得分:24)

$ hg branch experimental

(edit file)
$ hg commit
$ hg update default

答案 1 :(得分:21)

首先请注意git branchhg branch不同。使用hg branch创建的分支是永久性的,并且位于全局名称空间中,而使用git branch创建的分支是瞬态的。最近的等效git branchhg bookmark:书签可以重命名和删除,其行为更像Git-branches。

我最近写了guide for Mercurial bookmarks。将其与named branch guide进行比较。这两个指南都包含如何在Mercurial中使用(命名)分支来跟踪开发的工作示例。它显示了如何合并分支以及如何关闭它们或在完成后删除书签。

答案 2 :(得分:8)

如果它不是一个很大的功能(即分支没有名称),那就很简单了。

假设您的存储库位于变更集X.您可以根据需要处理该功能,提交,提交,提交,如果您对结果感到满意,请继续,就好像您知道它一直都能正常工作一样。 ;)如果您不满意,请执行hg update X并继续从那里开发。您在实验中所做的所有工作都将成为匿名分支。

奇怪的是,appears Git没有提供这样的方式来处理匿名分支,这可能让你感到困惑。