搜尋

首頁  >  問答  >  主體

GIT如何刪除一個中間的錯誤commit並保留後面正確的commit

如題,中間有一個錯誤的commit,然後後面又有一堆正確的,現在想刪除這個錯誤,並保留正確的,如何操作?

phpcn_u1582phpcn_u15822763 天前742

全部回覆(5)我來回復

  • 淡淡烟草味

    淡淡烟草味2017-05-02 09:34:27

    正常做法是 rebase,把後面的 commit 重新手動處理(重新提交所有有用commit、忽略無用commit、合併冗餘commit)。風險和難度都比較大。 (亡羊補牢,救回羊砍了狼)

    懶的做法就是退回到錯誤commit之前,之後用新分支重新提交,安全,但是工作量會比較大,中間容易再出錯。 (亡羊補牢,補上羊圈救回羊)

    更懶得做法,你在後面 commit 新的提交去修正前面的錯誤。 (亡羊補牢,補上羊圈新買隻羊)

    回覆
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-02 09:34:27

    git 復原錯誤_提交

    回覆
    0
  • 黄舟

    黄舟2017-05-02 09:34:27

    git rebase -i 回到包含錯誤提交以前的一個版本,其中就有選項能放棄某個提交的,具體用法請百度

    回覆
    0
  • 世界只因有你

    世界只因有你2017-05-02 09:34:27

    不知道你問的是不是 commit --amend…

    回覆
    0
  • 天蓬老师

    天蓬老师2017-05-02 09:34:27

    貌似不行,除非你RESET回之前的那個提交,然後刪除之後的提交日誌,再重新提交你需要的。之前我查過。

    回覆
    0
  • 取消回覆