git 刪除、合併多次commit提交記錄
一、合併多次記錄
1. git log找到要合併的記錄的數量.
2. git rebase -i HEAD~5
將最上面一個的記錄選為pack,下面記錄都改為s.
二、刪除某次commit提交記錄
在使用git中,如果要刪除之前某次commit的記錄,可以用git rebase完成。
Git rebase 步驟:
1.git log, 找到想要刪除的某次提交的commit id;
2.git rebase -i “commit id”^,注意指數符號^是定位到commit id的上一次;
3.進入gnu nano編輯介面,注意看最上端打開的文件名,將需要刪除的commit id前面的pick改為drop,
->選擇Ctrl+X退出,
->會提示save modified buffer …? 輸入Y(保存),
->又提示:file name to write :選擇Ctrl+T,
->在下一個介面用 「上下左右」 按鍵 選擇要保存的文件名,
->然後直接點擊 「Enter」 按鍵即可保存。
4.git log,看當前的commit歷史,發現只有步驟1的commit id前的記錄,git status看,告訴all conflicts fixed: run “git rebase –continue”
5.git rebase –continue,git log後,發現出現了所有pick的記錄;
6.git push origin master -f,將本地commit記錄和文件提交到遠端git;
Ref: