【问题标题】:Mercurial: Feature branch workflow?Mercurial:功能分支工作流程?
【发布时间】:2020-11-17 17:15:10
【问题描述】:

假设我正在开发一项新功能。

在开发我的新功能时,我获得了足够的基本功能,因此我想在继续开发完整功能的同时发布它。当新功能完全完成后,我想将其合并回主版本,替换基本功能。

执行此操作的 Mercurial 工作流程是什么?

【问题讨论】:

    标签: mercurial branching-and-merging


    【解决方案1】:

    我的方法是创建一个功能分支。 Mercurial 分支可以多次相互合并。因此,您可以在里程碑 1(基本/最小功能)和稍后(完整/完整功能)从功能分支合并到您的主分支。

    分支可以命名或未命名/匿名;无论哪种方式,工作流程都将以相同的方式工作。是否选择创建命名分支本质上是个人/团队偏好;请注意,命名分支会在存储库历史记录中永久存在,因此它们通常用于长期运行的项目。

    匿名分支是如此普遍,以至于有些人甚至没有意识到他们正在使用它。每当您提交工作时,就会有效地创建一个分支。每个开发人员都将隐式地在他们自己的分支上工作(至少在他们的新工作被推送和同步之前)。因此,您可以简单地在本地处理新功能,并且只在准备好时推送它以与其他人共享。工作更多,稍后再推。

    我个人经常使用这种方法,因为它非常灵活和简单。我经常喜欢保留多个本地存储库克隆,每个都专用于一个任务。这些可以随意创建、使用和删除。如果您的存储库很大,那么我建议使用 hg share 而不是 hg clone 创建第 2 到第 n 个本地存储库,因为这样可以节省时间和空间。

    如果您愿意这样做,您还可以使用 Mercurial 书签功能来“标记”匿名分支,这可能比创建永久命名分支更可取,因为以后可以删除书签。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-14
      • 1970-01-01
      • 1970-01-01
      • 2013-10-03
      • 2011-04-18
      • 1970-01-01
      • 2013-07-09
      • 2019-02-26
      相关资源
      最近更新 更多