git pull 时,error: 您对下列文件的本地修改将被合并操作覆盖

问题   :  使用 git  团队协作开发项目中 出现 git pull 时,error: 您对下列文件的本地修改将被合并操作覆盖

在这里插入图片描述

经过:

别人修改了文件并且提交PUSH,你也修改了此文件并且没有add和commit.然后你在pull时就会出现此提示。

 

解决方案1:

1,如果你想舍弃,你对当前文件的修改。那么git status

(使用 "git checkout -- <文件>..." 丢弃工作区的改动)

修改: cron/brand.dic
修改: cron/cat.dic
那么可以git checkout -- cron/brand.dic和git checkout -- cron/cat.dic,把工作区的文件checkout拉出覆写本地的文件。checkout与add是反义词。都是操作暂存区的。

也可以直接git reset --hard master,直接从仓库中拉出覆写暂存区和工作区。

解决方案2: (开发中常用 尤其是开发完成后提交代码出现)

就按照提示的操作一样:请在合并前提交或贮藏您的修改。

贮藏修改,就要用到git stash.网址:https://git-scm.com/docs/git-stash

第一步: git stash,本地工作区备分,放入git栈中。然后,工作区内容恢复到仓库head最后一次提交的内容。

第二步:git pull.

第三步:git stash pop, 这个过程自动合并。如果成功,则自动此备分从git stash中删除。如果有冲突,则你需要手动解决冲突。

第四步: git stash drop

下面就可以正常 提交你的代码了

 

2 git 远端代码强制覆盖本地代码  (慎用)

git fetch --all 

git reset --hard origin/master 

git pull

 

阅读剩余
THE END