解决 error: Your local changes to the following files would be overwritten by merge:XXXX

idea 上将本地代码推送到 git后 , 报错如下图

解决 error: Your local changes to the following files would be overwritten by merge:XXXX_第1张图片

error: Your local changes to the following files would be overwritten by merge:
        src/main/resources/application-prod.properties
Please, commit your changes or stash them before you can merge.

  我和同事在改同一个接口,没有注意到他什么时候提交的,应该是忘记了先 pull 。


解决方法 1:

保留本地最新修改,并拉取仓库中忘记 pull 的代码到本地 :

解决 error: Your local changes to the following files would be overwritten by merge:XXXX_第2张图片

三个命令:

git stash  
git pull origin master  
git stash pop  

解决方法 2:

放弃本地代码,新修改的都不要了,退回上一版本,再拉取代码到本地。

git reset --hard  
git pull origin master  

PS : 如上图,我选择了方法1。后续操作一切正常。

后记(2018.6.13):又看到 另一种类似的操作

在使用Git的过程中,有些时候我们只想要 git 服务器中的最新版本的项目,对于本地的项目中修改不做任何理会,就需要用到 Git pull 的强制覆盖,具体命令如下:

 git fetch --all
 git reset --hard origin/master 
 git pull

Git pull的强制覆盖本地文件在自动化部署项目中很有作用,比如用 SaltStack 部署 web 项目,强制覆盖可以保持与服务器内容一致。



参考:https://blog.csdn.net/misakaqunianxiatian/article/details/51103734

https://blog.csdn.net/tmtongming/article/details/73178997


你可能感兴趣的:(坑,傻踩傻乐,...,工具使用)