近期因版本需要,在我们某一个系统版本5.28开发阶段需要同步开发5.99版本,然后又因为5.99版本命名不规范,需要在5.99版本基础上建5.29版本【同步废弃5.99版本】,且5.29与5.28版本需要同步一起开发一段时间。
结果在5.28版本发版,5.28代码自动归并到5.29后发现:5.99版本中的部分修改被删除了。当时不以为意,发现被删的地方又加上去了(坑:没有遍历5.99的修改)。结果在5.29版本发版后发现很多在5.99版本的功能都没上线,后来仔细排查才恍然大悟:
1、从5.99拉取新建的版本5.29不会将5.99修改的内容识别为本版本变更项;
2、从5.28自动归并代码到5.29过程如果同一个文件5.28与5.99都有修改就会导致5.99的修改被归并掉。
从以上踩坑经历总结:该场景正确的操作应该是待5.28发版,代码归并到5.99后再从5.99版本基础上拉取5.29版本。