Git Workflow涉及樱桃采摘从主人到发布的变化

时间:2017-03-06 06:49:12

标签: git branch

我们的团队拥有以下工作流程。两个分支:

  • master:所有更改都已提交并已审核;
  • 发布:这一直是生产中的东西(推动这一点触发部署)

开发人员对master进行更改,对更改进行审核和测试,不时一次更改(不一定是最新版本,或者是master上唯一的版本)获得批准,并获得批准选择发布以进行部署。

这个问题是我们在主人验证它们之后,正在挑选从主人到个人的个人变更。这意味着我们正在测试一个上下文中的更改,验证它们,然后期望它们在另一个上下文中也能正常工作。

此工作流程/问题是否有名称?你会如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

就两个分支的上下文而言,如果两个分支提交都是同步的,并且测试环境与生产相似,那么部署问题的可能性就会大大降低。

但是,我觉得在公共共享分支机构挑选樱桃的过程并不是一个好方法。

  1. Cherry pick将更改您的提交ID,即两个不同分支中的相同更改将具有两个不同的提交ID。这将影响将来对任何特定提交的搜索,因为没有链接到更改何时完成以及何时发布。

  2. 恢复任何更改都会很痛苦。由于相同更改将有两个提交ID,因此您必须首先在master中找到提交ID,并在发布中找到另一个提交ID并还原两者。

  3. 更好的方法是遵循合并策略,即您对主分支进行更改并合并以释放分支。在此策略中,将添加额外的合并提交和您的发布分支,但您的功能提交将具有与在master中相同的ID。

    1. 这将提供已完成提交和提交合并的历史记录,也有助于回溯到特定提交。您可以了解提交何时完成以及何时发布。

    2. 恢复将像恢复合并提交一样简单。

    3. 使用此方法的一个示例是GitFlow