在代码合并过程中,我们面临代码被覆盖甚至删除的问题,因此我们正在征求建议。
dev1Client
,dev1Server
,...,dev6Client
,dev6Sever
。QA_Client
,QA_Server
,Release_Client
,Release_Server
。我们遵循的步骤:
所有开发人员将工作提交到其分支机构,然后将其更改合并到QA_Client
和QA_Server
。
质量检查内部版本由QA_Client
和QA_Server
准备。
一旦通过测试,管理员将创建一个带有发行号的标签,并将代码合并到Release_Client
和Release_Server
。
在合并过程中,第1步代码几次被覆盖或删除。我们发现开发人员未将其分支与QA_Branches同步的主要原因。
例如,Dev1和Dev4已将代码合并到QA*
分支,而其他开发人员尚未将其分支与QA*
同步。之后,Dev2可能会尝试将其代码合并到QA*
中,从而得到一些冲突警告。他错误地解释了这些警告,并覆盖了Dev1和Dev4所做的一些早期更改。
答案 0 :(得分:1)
您已经指出了导致自己的根本原因:
我们发现开发人员未将其分支与QA_Branches同步的主要原因。
您的团队应制定严格的政策,在开发人员将其新代码合并到app:backgroundTint
之前,始终使个人dev*
分支与QA*
分支中的最新更改保持最新。开发人员还需要了解不同的合并冲突消息的含义以及如何解决它们,SVN Book是一个很好的参考。
简而言之,您无法用工具代替个人责任(或缺乏责任感)。可以通过使有罪的开发人员追溯修复损坏的合并来实施该政策;)