git merge 时通常会有这几个选项:

Default (Fast-forward if possible):这个简单,不用解释了。
No Fast-forward(Always create a merge commit):即使能使用 fast-forward,也会创建一个合并节点。
Squash:squash 一词是用来将之前的提交压成一个。squash不是任何命令;相反,它是在git交互式rebases下提供给你的许多选项之一。压扁允许我们重写历史。假设我们在项目工作中做了很多提交,把所有的提交压成一个大的提交是比推送正确的选择。
要Squash提交,请运行下面的命令:
1 |
git rebase -i HEAD ~3 |
会将最后三次提交合并成一个提交。