今天在git提交时遇到一个问题,处理了一个下午,最终的方案还是develop分支回滚,在此记录,以儆效尤。
整个流程是这样的,A用户pull出代码后,编辑完在时间x提交,但没有push,B用户修改代码后push上去,A用户再push的时候会把B用户前面push的覆盖掉。这看起来是没啥问题,但是在merge冲突的时候就有大问题了。
这次发生的问题就是A,B用户都想要merge dev上的代码,但是由于沟通的原因,发生的上述的事情。
由于git记录的是提交的时间,所以当去查询提交记录的时候会发现,A在很早之前就提交了
日志显示:
A commit a1
。。。。。。
B commit & push b1
A pull->merge
B pull->merge
B commit& push b2
A commit& push a2
这个时候从提交记录去看,会发现B commit一直到B commit& push代码都是好的。A commit& push后出现问题,但是看此次提交记录,里面都是该次修改的内容,并不涉及到a1的内容。但是确实将 a1 push上去。