这给出了压扁多个提交的一个很好的解释: http://git-scm.com/book/en/Git-Branching-Rebasing 但它不适用于已经被推送的提交。 如何在我的本地和远程回购中压缩最近的几个提交? 编辑:当我做git rebase -i origin/master~4 master ,保留第一个pick ,将其他三个设置为squash ,然后退出(通过emacs中的cx cc),我得到: $ git rebase -i origin/master~4 master # Not currently on any branch. nothing to commit (working directory clean) Could not apply 2f40e2c… Revert "issue 4427: bpf device permission change option added" $ git rebase -i origin/master~4 master Interactive rebase already started 其中2f40是提交提交。 […]