在持续集成期间,我们合并所有功能分支,每天至少开发一次分支;并且至少每天将主线拉到特征分支。可能会有很多提交,因为功能/集成分支可以每天更新。
然后看来特征X不会被释放。如何从开发中恢复与特征X相关的所有提交?
在这样的恢复之后,与所有其他功能分支一起工作的团队将拉入主分支(因此功能A代码也将从它们中删除)。这可以用通常的方式完成;或者应该采取什么特别措施?
更新:经验表明,当我们尝试仔细合并想要的功能时,我们会发生巨大的合并冲突;此外,测试需要从零开始。我们的计划是通过融合开发,并从开发到功能分支,每天都避免这种情况。在截止日,我们可能会认为某些功能未进入发布状态,因此需要回滚此功能。在这种特定情况下寻找针对GIT命令的具体建议:如何“按功能名称回滚所有提交”。谢谢!
答案 0 :(得分:2)
作为一般的经验法则,如果你不得不回滚东西,那么你可能做错了什么。
在我看来,您的CI分支 - 由CI脚本构建和测试的CI分支 - 应该与您的发布/稳定分支分开。说完这个之后,你可以在master中开发和合并,并有一个专用的发布分支,反之亦然。任何一种方法都有起伏,所以你可以选择最合适的方法。
当您最终准备打包发布时,您将仔细合并所需的功能并构建和测试该发布分支。
答案 1 :(得分:0)
您可以使用功能切换概念在生产中启动停用的功能。在下一个开发周期中,您可以完成它或创建一个任务来删除它