首页/开发/Git 与协作速查/git commit --squash 生成待合并提交
合并变基与冲突71 条

git commit --squash 生成待合并提交

与 --fixup 类似但保留信息:生成 squash! 前缀提交,autosquash 时折叠到目标提交并打开编辑器合并两条信息。

Git 与协作速查开发更新于 2026-10-12
用途留给目标提交补充说明的补丁
语法git commit --squash <目标提交>
折叠效果合并后进入编辑器整理提交信息

常用示例

常用示例
git commit --squash a1b2c3
git rebase -i --autosquash origin/main
# 编辑器中出现两条信息,整理后保存
需要保留修补内容描述时用 --squash;只是想并入且不在意描述时用 --fixup 更快。

易错点

  • 折叠时会打开编辑器,长时间无人值守的脚本里要设置 GIT_EDITOR 以免卡住
  • 两条信息合并后可能冗长,整理时保留对后来者有价值的部分

数据来源与参考

  • Git 官方文档:git-commit(--squash)
  • Git 官方文档:git-rebase(--autosquash)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌