今天做了一件傻事

沒錯,和標題一樣,我用git rebase 刪除還未 push 的 commit…

原本在 rebase 未完成時,可以用 git rebase -abort 來取消

但偏偏我又完成了 rebase 導致正常方法無法救回來

經過一番研究後找到了解法

 

git 做為一個版控的專家,定有其獨到之處

其實我們在 branch 的每個動做都會有所記錄

所以我們可以從記錄中找到 rebase 前的 commit 再建立新分支來救回

此神聖的檔案路徑在此 「your project」 /.git/logs/refs

裡面會有 heads & remotes

其中分別存了本地與遠端的 branch 記錄

在 heads 找到自己的 branch

然後找到需要的 commit number

執行 git checkout -b 「new name」 「commit number」即可

祝大家事事順利 XD

 

 

 

 

 

 

 

 


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 顏澤偉 的頭像
    顏澤偉

    Willy's Fish教學筆記』

    顏澤偉 發表在 痞客邦 留言(0) 人氣()