参考网址:http://blog.csdn.net/iefreer/article/details/7679631
https://wenku.baidu.com/view/6a25f40653d380eb6294dd88d0d233d4b14e3f35.html
1. git pull origin master
在使用git pull代码时,经常会碰到有冲突的情况,提示如下信息:
error: Your local changes to 'c/environ.c' would be overwritten by merge. Aborting.Please, commit your changes or stash them before you can merge.
这个意思是说更新下来的内容和本地修改的内容有冲突,先提交你的改变或者先将本地修改暂时存储起来。
处理的方式非常简单,主要是使用git stash命令进行处理,分成以下几个步骤进行处理。
2. 先将本地修改存储起来
git stash
用git stash list可以看到保存的信息
3. 还原暂存的内容
查看修改的内容。
git diff -w .project
4. 解决文件中冲突的的部分、
其中Updated upstream 和=====之间的内容就是pull下来的内容,
====和stashed changes之间的内容就是本地修改的内容。
碰到这种情况,git也不知道哪行内容是需要的,所以要自行确定需要的内容。
解决完成之后,就可以正常的提交了。
总结:
如果希望保留生产服务器上所做的改动,仅仅并入新配置项, 处理方法如下:
git stash
git pull
git stash pop
然后可以使用git diff -w +文件名 来确认代码自动合并的情况.
反过来,如果希望用代码库中的文件完全覆盖本地工作版本. 方法如下:
git reset --hard
git pull
其中git reset是针对版本,如果想针对文件回退本地修改