Mercurial:分支版本?

以前的历史:我使用SVN的最后几年。 发布软件项目的新版本包括以下步骤:

  • 为新版本创建一个分支:/repo/branches/0.1
  • 让代码进入一个值得释放的状态
  • 为候选版本创建一个标签:/repo/tags/0.1-RC1
  • 为RC1创建分支以修复错误:/repo/branches/0.1-RC1
  • 为新候选版本创建标签:/repo/tags/0.1-RC2
  • {...}
  • 为最后一个RC:/repo/tags/0.1创建一个v0.1标签
  • 将0.1合并到主干中
  • 据我所知Mercurial看到分支和标签与SVN略有不同,这最终导致我的问题:

    我是否为发布创建分支(和标签)? 如果没有的话:还有什么要Mercurial为我归档类似于描述的开发模式/循环的东西?


    你可以很容易地继续使用这种方法。 我不确定你需要一个单独的RC1分支,但我想有很好的理由。

    Mercurial中存储标签的方式有点麻烦,它是一个逐个列出它们的版本化文件。 结果,标签创建构成了变更集。 你应该努力在一个分支上保留所有这种创建标签的变更集,否则你将会遇到合并冲突(这很容易解决,但是令人讨厌)。


    您可以使用旧的工作流程,但是:

  • 每个版本的分支真的需要(在任何SCM中),只有当你必须同时在生产中保留一些数量(> 1)的版本时,gor单个维护版本不需要分支树
  • 我看到很多(相当复杂的)项目,它们使用双分支方法(“稳定”只有合并集和标签+“发展”每天的发展(短期分支每任务也是可能的,但它是比“必须”更多的品味和习惯问题)
  • 链接地址: http://www.djcxy.com/p/37537.html

    上一篇: Mercurial: Branching for releases?

    下一篇: Can I clone part of a Mercurial repository?