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:

  1. //blog.csdn.net/QQxiaoqiang1573/article/details/68074847

  2. //www.jianshu.com/p/c9f131e22a60

 

Tags: