Git提交代码冲突:commit your changes or stash them before you can merge.
用git pull拉取远程分支代码时候遇到如下问题:
error: Your local changes to the following files would be overwritten by merge:
a.js
b.js
Please, commit your changes or stash them before you can merge.
原因是:别人修改了a.js和b.js到版本库中,你本地也修改了a.js和b.js,此时你git pull操作就出现了冲突,解决方法上面提示了。
1,git commit 本地的修改,------貌似这个方法没用,还是会提示这个error
2,git stash
git stash
git pull origin release/V1.8.0
git stash pop
stash原理是:先把工作区恢复到上次提交的内容,同时备份本地的修改,之后就可以正常的pull代码了,pull完成后,再进行stash pop将之前的修改返回到当前工作区。
git stash:备份当前工作区的内容,从最近一次提交中读取相关内容,让工作区保证和上次提交的内容一致,同时,将当前工作区的工作内容保存在Git栈中;
git stash pop:从Git栈中读取最近一次保存的内容,恢复工作区的相关内容。如果存在多个stash的内容,所以用栈来管理,pop会从最近一个stash栈中读取内容并恢复。
git stash list:显示Git栈中所有的备份,利用列表来决定从哪个地方恢复。
git stash clear:清空Git栈。
如果要放弃本地的修改:
git reset --hard
git pull origin 分支名
【完】
众人皆醉我独醒