挤压

什么是挤压?

Squashing 是一个进行多次提交并将它们组合成一个提交的过程,该提交封装了初始提交的所有更改。

压扁和远程分支

在跟踪远程分支的分支上压缩提交时要特别注意; 如果你压缩已经被推送到远程分支的提交,那么这两个分支将会分叉,你将不得不使用 git push -f 强制这些更改到远程分支。请注意,这可能会导致其他人跟踪该远程分支时出现问题,因此在强制推送压缩提交到公共或共享存储库时应谨慎使用。

如果项目是在 GitHub 上托管的,你可以通过将它添加到 Settings - Branches - Protected Branches,在某些分支上启用强制推送保护,例如 master