我使用git作为分布式修订控制系统来管理我为项目开发的代码。由于我的项目敏捷,我们有定期的冲刺周期。我们的冲刺周期包括2周。 每个代码票据都有一个为主分支创建的功能分支,名为develop。现在,当代码被审查时,它将合并到功能分支中。
现在问题是客户端在sprint中间请求发布时。所以现在开发分支可能包含代码,该代码具有提交给它但尚未测试的特征分支。 但是,您必须将开发分支作为发布交付给客户端。那么如何选择您希望包含在该版本中的功能分支?一旦您将代码合并到开发分支(将其发布到客户端),就很难从开发中删除该更改。这种情况的最佳项目解决方案是什么?
答案 0 :(得分:2)
我会说你应该继续经常工作。对于此特定客户端,请发布特定版本,该版本将保留在特定分支中。例如:
git checkout -b release_for_demanding_client develop
现在执行常规版本中的所有魔术,仅针对release_for_demanding_client而不是开发。将其发布给客户端,忘记这个分支曾经存在过。您可以保留它以供将来参考,它是无害的。但是不要继续在它上面进行开发,因为正如你所说 - 那里的代码还没有被审查过,并且在开发分支中可能实际上是不同的(在审查修复之后)。