如果远程仓库发生了修改,然后后续本地仓库也发生了修改,在pull的时候会发生代码冲突:
error: Your local changes to the following files would be overwritten by merge:
如果希望保留生产服务器上所做的改动,仅仅并入新配置项, 处理方法如下:
git stash
git pull
git stash pop
git stash可以把当前的修改先保存起来(不是commit那样提交到暂存区),让工作区保持干净,可以进行其他操作。git stash pop为取回上一次修改的
然后可以使用git diff -w +文件名 来确认代码自动合并的情况.
反过来,如果希望远程仓库完全直接覆盖本地 方法如下:
git fetch --all
git reset --hard
git pull
其中git reset是针对版本,如果想针对文件回退本地修改,使用
git checkout HEAD file/to/restore
如果只是单个文件且知道哪个文件且内容变动很小,可以这么处理:
https://www.cnblogs.com/ryxiong-blog/p/11269066.html