首页 > 代码库 > Git pull冲突解决

Git pull冲突解决

1.问题描述:
张三修改了文件A并且push到了Git server上,这时李四也在修改文件A,但修改没有完成,李四希望获得最新的代码,如果李四直接pull的话会遇到以下问题:
error: Your local changes to the following files would be overwritten by merge:
***************************************
Please, commit your changes or stash them before you can merge.
造成冲突的原因:
很多命令都可能出现冲突,但从根本上来讲,都是merge和patch(应用补丁)时产生冲突。
而rebase就是重新设置基准,然后应用补丁的过程,所以也会冲突。
git pull会自动merge,repo sync会自动rebase,所以git pull和repo sync也会产生冲突。当然git rebase就更不用说了。

2.问题解决
2.1、commit your change
先提交你的改动,再更新代码(commit-->pull),我在项目中是使用这种方式的~
2.2、stash
git stash
git pull
git stash pop
git stash的作用是把本地的改动保存起来,
然后在git pull这样就不会有冲突的问题,
最后git stash pop就是把之前的改动merge到代码中。

Git pull冲突解决