搜尋

首頁  >  問答  >  主體

git 刪除中間的 commit

維護一個 git 項目, 發現裡面的 commit 描述都是,修改某某文件,增加某某文件,有沒有辦法把這些 commit 刪除呢?

比方說:
1 代表的是有效的 commit ,註解清楚
0 代表註解不清晰的 commit

1 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1

我要如何把註解不清楚的 commit 刪掉呢?

过去多啦不再A梦过去多啦不再A梦2767 天前585

全部回覆(2)我來回復

  • 怪我咯

    怪我咯2017-05-02 09:21:49

    題主要的不是「刪除」,而是「合併」。

    1. git rebase -i <commit hash> 從某一個 commit 開始
    2. 在開啟的編輯器中,將需要合併的 commits 前的 pick 修改为 squash
    3. 保存並退出

    建議 git checkout -b squash_some_commits 新建一個臨時分支處理這件事,犯錯了刪除重來便是。

    回覆
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-02 09:21:49

    git rebase 命令
    http://zhidao.baidu.com/link?url=Q8DXAl3eVJpkBKF9hcmCi0TlKC0Vyu47PuIkfBWviAoACV6wk67ahzJDXPgxsTpJtyz5euQzqTVu_95QAnN9xLazCzMPsC9gBwFT3RifXYO

    回覆
    0
  • 取消回覆