Dai Chong's blog

 在多人协作开发中,使用git或svn管理代码最常见的问题就是代码冲突!

 作为高效开发团队中的一员应当具有处理这些问题的能力。

 假设现有一个项目,有多个开发成员,成员A和成员B共同管理同一个分支的代码。成员A在本地修改了代码并提交到daichongweb分支,成员B也修改了代码,当成员B需要用到成员A提交代码中的部分功能,需要拉取daichongweb分支的代码,这时会出现一个错误。


 可以看出git不允许拉取代码,因为成员A也同样修改了代码。那么能提交吗?答案是不能!提交会出现代码冲突的错误!

 这时应该想到的是如何把本地代码保存起来,当然git提供了命令。

1
git stash


 使用 git stash 可将已修改的代码保存起来,然后在使用git pull 拉取代码就不会出现错误。

 然后执行git stash list查看暂存代码,再使用git stash pop stash@{0}把代码pop出来,这时会提示冲突,把冲突解决就好了。

1
2
git stash list 
git stash pop stash@{0}

总结

代码冲突要在本地处理,不要直接提交。
解决同一分支冲突的步骤:

1
2
3
4
5
git stash
git pull
git stash list
git stash pop stash@{0}
解决冲突


 评论