【Git】pull遇到错误:error: Your local changes to the following files would be overwritten by merge:
這種情況下,如何保留本地的修改同時又把遠程的合并過來呢?
首先取決于你是否想要保存本地修改。
是
別急我們有如下三部曲
git stash git pull origin master git stash popgit stash的時候會把你本地快照,然后git pull 就不會阻止你了,pull完之后這時你的代碼并沒有保留你的修改。驚了! 別急,我們之前好像做了什么?
STASH
這時候執行git stash pop你去本地看會發現發生沖突的本地修改還在,這時候你該commit push啥的就悉聽尊便了
否
既然不想保留本地的修改,那好辦。直接將本地的狀態恢復到上一個commit id 。然后用遠程的代碼直接覆蓋本地就好了
git reset --hard git pull origin mastergit stash: 備份當前的工作區的內容,從最近的一次提交中讀取相關內容,讓工作區保證和上次提交的內容一致。同時,將當前的工作區內容保存到Git棧中。
git stash pop: 從Git棧中讀取最近一次保存的內容,恢復工作區的相關內容。由于可能存在多個Stash的內容,所以用棧來管理,pop會從最近的一個stash中讀取內容并恢復。
git stash list: 顯示Git棧內的所有備份,可以利用這個列表來決定從那個地方恢復。
git stash clear: 清空Git棧。此時使用gitg等圖形化工具會發現,原來stash的哪些節點都消失了。
總結
以上是生活随笔為你收集整理的【Git】pull遇到错误:error: Your local changes to the following files would be overwritten by merge:的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows 2019 激活教程详解(
- 下一篇: 基于elementui的input的二次