0.事先准备。
1)把远程仓库的README.md内容编辑为Admin管理端接口1(之前是Admin管理端接口)。
2)本地仓库的README.md内容改写为Admin管理端接口2(之前是Admin管理端接口)。
1.先push 再pull
1)Commit Changes提交
2)push的时候会提示有冲突,需要你进行手动merge,手动合并以解决冲突
3)选择Merge(推荐)
Accept Yours 就是直接选取本地的代码,覆盖掉远程仓库的
Accept Theirs 是直接选取远程仓库的,覆盖掉自己本地的
我们选择Merge,自己手动行进选择、修改。
这里【左边部分】是【你本地仓库的代码】,【右边部分】是【远程仓库的代码】,中间的【result】就是【你修改之后的结果】。左下角的【Accept Left】 和
【Accept Right】其实就相当于是之前的 Accept Yours 和 Accept Theirs , 右下角的【Apply】是确认合并,【Abort】是取消合并。
我们在result中修改好自己想要merge的代码,然后点击Apply。
这样我们就解决了冲突,解决完冲突后记得要再push一次,将代码推送到远程仓库。
可以看到已经push成功了,此时再查看下远程仓库的README.md和本地仓库的README.md是否一致。答案是一致的。
2.先pull再push,其实也是一样的
现在远程仓库的README为Admin管理端接口,本地我改成Admin管理端接口1,这次先不commit,我们先来pull
发现冲突,与1的解决方式一样
解决冲突后,需要commit,才能将最终的结果更新到本地,再次push才能同步推送到远程仓库
总结
多人协作开发的时候,如果出现了你没有改过的文件跟你冲突了,一定要去找到当事者,说清楚是如何冲突的;
然后协商解决,千万不要擅自拉别的分支去试图解决冲突,或找文件覆盖,更或者以自己的文件为准.
同时记住,解决了之后,要add 和 commit 最后push。为保证万无一失,最后在冲突都解决之后,重启项目;
保证至少不会有立即奔溃的现象发生。然后才去提交、push.
提交的时候,一定要保持清醒,先搞清楚自己要提交的文件之间的关系,然后再提交,这样才不会有文件缺失的问题,造成奔溃.
如果任务比较多,又开了多个分支,分别进行开发,再次强调,一定要清楚自己在各个分支上做了什么,自己要提交的是什么。最好是能做个详细的笔记,没有把握宁愿不要去提交到生产服务器.
提交代码的时候不要走神,因为这是一个神圣的时刻!