和其他人一起编辑了同一个文件,其他人已经commit了,但其他人没有通知你,你也来修改这个文件,
导致你想push的时候无法push,提示你需要先pull,提示信息如下
此篇文章只针对当前只有master分支
error: Your local changes to the following files would be overwritten by merge:
这里会列出有冲突的文件
Please commit your changes or stash them before you merge.
Aborting
Updating 555b2da..7f3abee
这里最好是这么做
1.保存本地修改
git stash save "本地修改(说明改了什么功能)"
2.拉取
git pull
3.还原本地修改并删除
git stash pop
如果不想删除本地修改
git stash apply stash@{0}
4.编辑冲突
这时候会有冲突,编辑器会报错,具体为
<<<<<<< Updated upstream
Unit unit = getUnitIdByUid(user.getUid());
if (unit == null) {
storeOrder.setUnitId(0);
} else {
storeOrder.setUnitId(unit.getId());
}
=======
storeOrder.setUnitId(user.getUnitId());
>>>>>>> Stashed changes
<<<<<<< Updated upstream
Unit unit = getUnitIdByUid(user.getUid());
if (unit == null) {
storeOrder.setUnitId(0);
} else {
storeOrder.setUnitId(unit.getId());
}
=======
这一部份为其他人提交的
=======
storeOrder.setUnitId(user.getUnitId());
>>>>>>> Stashed changes
这一部份为本地修改的,根据需要删除不需要的修改
5.把冲突都解决后,再提交
git add
git commit -m "xxxx"
git push
标签:pull,git,文件,stash,修改,push,changes
From: https://www.cnblogs.com/lybaobei/p/18240191