簡體   English   中英

撤消git pull --rebase

[英]Undoing a git pull --rebase

嘿,我是git的新手,我需要撤消拉動,任何人都可以幫忙嗎?!? 所以我做的是......

  1. git commit
  2. git stash
  3. git pull --rebase
  4. git stash pop

這造成了一堆沖突而且有點不對勁。 現在做“git stash list”顯示我的藏匿處仍在那里。 是否可以在執行git commit之后將我的repo恢復到這一點。 所以我的回購只有效率只包含我所做的更改和服務器的新內容嗎?

實際上,為了使這更容易,Git保留了一個名為ORIG_HEAD的引用,它指向了rebase之前的位置。 所以,它很簡單:

git reset --hard ORIG_HEAD

使用git reflog您將看到過去HEAD指向的提交列表

運用

git checkout -b after-commit HEAD@{1} # or the commit you want to recover

你在那個精確的位置創建一個新的分支並檢查它

你應該檢查命令

git reset --merge

這消除了對git提交的需要; git stash before a pull(雖然不知道rebase)

該命令返回一個工作空間,其中包含對沖突拉動之前的狀態的未提交更改。

使用git log -g找到你想要返回的提交索引,只需要執行git checkout索引

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM