Skip to content

合并最近的提交

一般都会从主分支拉自己的分支,然后进行修改。

有时候会出现,已经推送到远程了一个版本,但是又要继续修改。

如果再推送的话,远程就会有两笔分支,这两笔一个是 feature,一个是 fix。

在第一笔还未合并到主分支的情况下,可以 squash 这两笔提交,让提交记录简洁一些。

合并提交

git rebase -i HEAD~2
  • HEAD~2 合并最近的两笔
pick 4d7d0b8 Implement feature A
pick a3f9c21 Fix bug B
  • 将第二行改为 squash
pick 4d7d0b8 Implement feature A
squash a3f9c21 Fix bug B
  • 保存并关闭
# This is a combination of 2 commits.
Implement feature A
Fix bug B
  • 修改提交信息,把两笔提交的消息合并成一个

强制推送

如果第一笔历史已经推送到远程,并且是个人独立的工作分支,可以强制推送进行覆盖

git push --force-with-lease