首页/开发/Git 与协作速查/作者(author)与提交者(committer)的区别
协作与代码评审75 条

作者(author)与提交者(committer)的区别

作者是写改动的人,提交者是实际执行提交的人;平台按两者分别展示(committed by / authored by),rebase、打补丁等操作会改变提交者。

Git 与协作速查开发更新于 2026-10-12
作者git commit --author='Name <email>' 或修订历史保留的原作者
提交者执行提交时的 user.name/user.email,可用 GIT_COMMITTER_* 覆盖
场景代他人提交、rebase 重放、邮件补丁应用

查看与覆盖

查看与覆盖
git log --format='%h A:%an C:%cn' -5
git commit --author='Alice <alice@example.com>' -m 'fix: 采纳同事补丁'
GIT_COMMITTER_NAME=bot GIT_COMMITTER_EMAIL=bot@example.com git commit -m 'chore: 自动同步'
导入外部补丁(如 git am)保留原作者、提交者记为当前用户;贡献统计通常按作者归属。

易错点

  • rebase 会让提交者变成执行变基的人,作者不变,署名核对时别混淆两者
  • 手动改作者为他人会造成不实归属,仅限确为对方作品的场景

数据来源与参考

  • Git 官方文档:git-commit(--author)
  • Pro Git 2nd Edition · 5.3 维护项目
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌