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 分支名

 

【完】

眾人皆醉我獨醒


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM