虽然以前我很怕git冲突,包括以前的版本控制器SVN上的冲突,但是昨天我决定好好的面对它,不去怕它,下面是我的解决过程。。。
话说一天的早上,我和同事(称为A)都同步了网络上的代码,然而A在中途提交了一次,并且合并到主分支master上了,更巧的是提交的那个文件是我现在也修改了的,然后等我晚上提交request 合并时,上面显示无法自动合并,头疼了(当时还是怕有冲突的),以下是我的解决办法。。。
windows版本
打开git bash
进入到项目本地分支目录下(如我的本地分支名叫wuyouwei)
切换到本地master主分支
git checkout master
同步本地wuyouwei分支
git merge wuyouwei
同步完成后本地master分支上就有本地分支wuyouwei的修改内容了
然后与网络上的master同步
git pull
此时会发生冲突不要紧张
查看那几个文件冲突了
git status -uno
打开相应的文件去手动修改下(文件上会有你的修改和网络上别人的修改,自己看着修改)修改完成后
git add 冲突文件
git commit -m'all' (也许会让你填提交信息,但是默认的有,就按Esc后再按shift加:然后输入wq再按Enter键)
git push
这样冲突就解决了
linux版本(可能会对windows有用)