亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

撤消git重基

撤消git重基

Git
倚天杖 2019-06-19 14:58:32
撤消git重基有人知道如何輕松地撤銷git重基嗎?想到的唯一辦法就是手動完成:Git簽出兩個分支的提交父級。然后從那里創建臨時分支。櫻桃-全部手工提交替換我用手動創建的分支重新建立基礎的分支。在我目前的情況下,這是可行的,因為我可以很容易地發現兩個分支的提交(一個是我的東西,另一個是我同事的東西)。然而,我的方法給我的印象是次優和容易出錯(假設我剛剛使用了我自己的兩個分支)。有什么想法嗎?澄清:我說的是重基,在此期間,重放了一堆提交。不止一個。
查看完整描述

3 回答

?
BIG陽

TA貢獻1859條經驗 獲得超6個贊

最簡單的方法是找到分支的頭提交,就像在重基開始之前在雷擊...

git reflog

并將當前分支重置為它(通常在使用--hard備選方案)。

假設以前的承諾是HEAD@{5}在參考日志中:

git reset --hard HEAD@{5}

在Windows中,您可能需要引用以下引用:

git reset --hard "HEAD@{5}"

您只需做一個git log HEAD@{5} (窗戶: git log "HEAD@{5}").

如果您沒有禁用每個分支重放,您應該可以簡單地這樣做。git reflog branchname@{1}作為重基,在重新連接到最終的頭之前,分離分支頭。我會再次檢查這個,雖然我最近還沒有核實過。

默認情況下,對于非裸存儲庫,將激活所有REFLOG:

[core]
    logAllRefUpdates = true


查看完整回答
反對 回復 2019-06-19
?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

實際上,重基將您的起點保存到ORIG_HEAD所以這通常很簡單:

git reset --hard ORIG_HEAD

但是,resetrebasemerge全部保存你的原作HEAD指針入ORIG_HEAD因此,如果您在試圖撤消重基之后執行了任何這些命令,那么您將不得不使用reflg。


查看完整回答
反對 回復 2019-06-19
?
瀟湘沐

TA貢獻1816條經驗 獲得超6個贊

查爾斯的答案很有效,但你可能想這樣做:

git rebase --abort

清理完reset.

否則,你可能會收到消息“Interactive rebase already started”.


查看完整回答
反對 回復 2019-06-19
  • 3 回答
  • 0 關注
  • 796 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號