You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git压缩合并提交的作者、提交者及提交信息如何确定?

关于Git压缩合并(git merge --squash --ff-only)的作者、提交者及提交信息规则

场景说明

仓库初始分支状态:

A -- B (main)
      \
       C -- D -- E (feature_branch)

各提交作者:

  • commit C - thing1
  • commit D - thing2
  • commit E - thing3

执行git merge --squash --ff-only命令后,feature_branch的C、D、E提交被压缩为新提交F',main分支快进到F',分支状态变为:

A -- B -- F' (main)

问题解答

  1. 提交F'的作者是谁?
    默认情况下,压缩提交F'的作者是执行该命令的当前用户。如果需要指定其他作者,可以在提交时通过--author参数设置,或者在Git自动打开的提交信息编辑器中手动修改作者字段。

  2. 提交信息是什么?
    Git会自动生成一份默认提交信息,内容包含被压缩的所有提交的标题,示例格式如下:

Squash commit of the following:
[commit C的提交标题]
[commit D的提交标题]
[commit E的提交标题]

你可以在提交前的编辑器中修改这份信息,比如替换为更简洁的feature功能描述,符合团队的提交规范。

  1. 执行命令的用户会成为新压缩提交的committer,这个假设是否正确?
    这个假设是正确的。提交者(committer)就是执行该压缩合并操作的用户——因为是该用户完成了将多个提交压缩并合并到main分支的操作。默认情况下作者和提交者为同一人,除非手动指定了不同的作者。

内容的提问来源于stack exchange,提问作者NFeruch - FreePalestine

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 12:08:12