我们的团队拥有以下工作流程。两个分支:
开发人员对master进行更改,对更改进行审核和测试,不时一次更改(不一定是最新版本,或者是master上唯一的版本)获得批准,并获得批准选择发布以进行部署。
这个问题是我们在主人验证它们之后,正在挑选从主人到个人的个人变更。这意味着我们正在测试一个上下文中的更改,验证它们,然后期望它们在另一个上下文中也能正常工作。
此工作流程/问题是否有名称?你会如何解决这个问题?
答案 0 :(得分:0)
就两个分支的上下文而言,如果两个分支提交都是同步的,并且测试环境与生产相似,那么部署问题的可能性就会大大降低。
但是,我觉得在公共共享分支机构挑选樱桃的过程并不是一个好方法。
Cherry pick将更改您的提交ID,即两个不同分支中的相同更改将具有两个不同的提交ID。这将影响将来对任何特定提交的搜索,因为没有链接到更改何时完成以及何时发布。
恢复任何更改都会很痛苦。由于相同更改将有两个提交ID,因此您必须首先在master中找到提交ID,并在发布中找到另一个提交ID并还原两者。
更好的方法是遵循合并策略,即您对主分支进行更改并合并以释放分支。在此策略中,将添加额外的合并提交和您的发布分支,但您的功能提交将具有与在master中相同的ID。
这将提供已完成提交和提交合并的历史记录,也有助于回溯到特定提交。您可以了解提交何时完成以及何时发布。
恢复将像恢复合并提交一样简单。
使用此方法的一个示例是GitFlow。