当我们在进行多人开发的时候,冲突问题是一定会遇到的,如果不想办法解决,那是真的很头疼,加班不为了别的,就为了解决冲突,就问你怕不怕!!

原因:线上版本的代码和本地分支的代码不一致,所以就会导致冲突,以下办法为本人开发经验,百试百灵。

防止冲突问题的出现:

  先完成本地开发,我们可以这样做:

    1.新建分支(git checkout -b feature-xxx)这个xxx就是功能名字

    2.添加代码监听(git add -a)add后面的命令,可以自己上网查,这里就不细说了

    3.提交代码到暂缓区(git commit -m "注释说明")

  然后进行更新本地develop分支

    1.先切换到develop分支(git checkout develop)

    2.更新本地develop分支(git pull)

  注意:

    当在git pull的时候报了error: Your local changes to the following files would be overwritten by merge:
    xx/xx/xx/xx/xx.xx
    Please commit your changes or stash them before you merge.
    这类型的,我们应该用git log --oneline,然后选择最新的那个版本号(如:4589a56c3e574a)
    这时候输入命令:git reset --hard 版本号(4589a56c3e574a),回退到最新版,然后再进行第三步操作即可

    3.再切换到上面的开发的辅助分支(git checkout feature-xxx)

    4.再把辅助分支和本地的develop衍合在一起(git rebase develop)

    5.再推送到远程仓库(git push),输入这个命令后会出现一条完整的git push 命令,复制粘贴+回车键即可(我之所以不输入完整命令,是因为,,,都懂的)

上面的方法解决了冲突所带来的问题,所以一般都不会有冲突问题的出现的,但如果还是出现了这个问题的话,我还有终极大招,绝对有效

解决冲突问题:

  把自己写好的代码(注意:只能是自己的代码,别人不会动的那种)或者文件,复制一份出来,放到一个安全的地方(安全的地方指的是,你接下来的操作都不会影响到的那个地方),然后重新找个地方,把线上的最新的代码(git clone 远程仓库地址)下下来,然后把自己刚才复制出来的代码放进项目相应的地方,把原来自己写的旧代码覆盖了,然后新建分支(这里有的人会先新建辅助分支,然后再把新代码粘贴回项目里面,其实都一样的,都可以的,亲测没问题),再按照上面的方法去提交代码就行了。

本人第一次写博客,不喜勿喷,如果有需要改正的地方,欢迎指出错误,谢谢。。

Unless you try to do something beyond what you have already mastered you will never grow.