问题1:
用户A和B,文件a,同一个branch
用户A先pull(时间为12:00),再编辑文件a,再commit和push,push时间为13:00
用户B先pull(时间为12:00),再编辑文件a,再commit和push,push时间为13:01
请问最后repo里面的文件a完全是用户B的,还是两位用户共同的修改成果都存在?
问题2
用户A和B,文件b,同一个branch
用户B提交了一个修改文件b的commit和push(时间为14:00)
用户A开始pull(时间为14:01),但是发现报错了,提示本地有commit未同步,于是把手头的文件b的修改commit掉,然后再pull,成功,然后再merge,最后push出去
请问此时repo里面的文件b,有没有包含了用户A和B两个人的修改成果?
问题1 都有
问题2,看不懂
这里是pull?我怎么觉得是push
OK,如果这里是pull,那B的commit没有push,那那么A pull commit merge push ,最后远端是只有A的
这些前提是a和b改的代码不冲突,如果冲突了,改了同一片代码块,就以问题1为例,B在14.01分push的时候会先提示你有新的push要先pull下来(这是正常的,不管冲不冲突都会有,我猜你可能忘写了),B在pull下来后会报冲突,要修复了这个冲突(比如修改冲突的代码块),让才能成功push