git rebase 把多次commit合并成一個

需求

開發(fā)過程,自己的一個模塊沒有完成或者有事情走開了,不想提交到倉庫,但是有恐怕代碼覆蓋或者丟失,就把代碼提交到本地倉庫了,但是如果一個模塊比較大的時候,自己本地提交的次數(shù)就比較多了,這樣就不想在公司遠(yuǎn)程倉庫中出現(xiàn)那么多commit,所以就想把本地的多次commit合并成一個提交到遠(yuǎn)程倉庫中.

操作

  1. git log(盡量不要git pull, 會把別人的log pull下來)

    先查看一下log,要把前面多少次commit合并了
    1.png

    我自己的log,我想把前面5個合并,然后ctrl+c 退出.
  2. git rebase -i HEAD~5

    命令中5代表合并的commit數(shù),命令以后出現(xiàn)下面頁面
    2.png

    然后用vim命令修改pick,把圖中頭部5個中的pick修改為squash,注意只修改后四個,第一個不用修改,git會自動處理第一個,修改后保存退出,出現(xiàn)以下頁面
    3.png

    修改commit以后退出,就會出現(xiàn)下面頁面
    4.png

    表示合并成功.
  3. git pull
    現(xiàn)在要拉取代碼,以免覆蓋別人的代碼.

  4. git push
    提交代碼,把本地修改提交到遠(yuǎn)程倉庫,這樣看到遠(yuǎn)程倉庫就一條commit記錄.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容