git 相同commit_Git 合并多次 commit 、 删除某次 commit
Git 合并多次 commit
有時候在一個分支的多次意義相近的 commit,會把整個提交歷史搞得很混亂,此時可以將一部分的 commit 合并為一個 commit,以美化整個 commit 歷史,可以使用 rebase 的方法來合并多次 commit,主要步驟如下:
1. git log 查看當前的提交歷史
比如需要將以下 3 個 ”請假應用客戶端代碼優化“ 的 commit 合并為一個 commit;
2. git rebase 進行 git 壓縮
執行 git rebase -i HEAD~4 對最近的 4 個 commit 進行 rebase 操作;
具體的操作下面的 Commands 說明得很清楚了,對于 commit 合并可以使用 squash、fixup 指令,區別是 squash 會將該 commit 的注釋添加到上一個 commit 注釋中,fixup 是放棄當前 commit 的注釋;
編輯后保存退出,git 會自動壓縮提交歷史,如果有沖突,記得解決沖突后,使用 git rebase --continue 重新回到當前的 git 壓縮過程;
3. 推送到遠程倉庫 git push -f
重新查看提交提交歷史,會發現這些 commit 已經合并了,整個提交歷史簡潔了很多:
刪除某次 commit
同樣的,利用 git 壓縮 rebase 指令來刪除某個 commit,過程和以上是類似的;
在 git log 下,假如我們需要刪除“請假應用客戶端代碼優化”這個 commit:
可以通過 git rebase -i HEAD~1 (對最近1次 commit 進行 rebase) 或 git rebase -i 9fbf10(對 commit id 前幾位為?9fbf10 的 commit 之后的 commit 進行 rebase);
將需要刪除的 commit 設置操作指令 drop ,保存退出即可;
在執行 git log 時,可以發現該條 commit 已經從提交歷史中刪除了;
總結
以上是生活随笔為你收集整理的git 相同commit_Git 合并多次 commit 、 删除某次 commit的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初学Java学员,千万不要踩这几个坑
- 下一篇: Java中高效判断数组中是否包含某个元素