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

如何修改GitHub提交者名称?解析提交者名称来源

GitHub提交者名称「My Name」的来源与修改方法

一、「My Name」是哪来的?

GitHub上显示的**提交者(committer)**名称「My Name」,其实来自你本地Git的配置,主要有这几种情况:

  • 全局配置:你用git config --global user.name设置的用户名,如果没单独给仓库设过,提交时就会用这个全局值。
  • 仓库专属配置:如果当前仓库单独通过git config user.name(不加--global)设过用户名,提交时会优先用这个仓库的配置。
  • 临时指定:提交时通过环境变量GIT_COMMITTER_NAME临时改了名称,也会显示成「My Name」。

二、怎么把提交者改成「john doe」?

你已经知道用rebase批量改作者信息,要改提交者的话,调整下命令就行,给你两种实用方法:

方法1:批量修改所有历史提交的提交者

直接在你原来的rebase命令基础上,加上提交者的配置参数,或者先统一本地配置再批量重置:

# 方式A:直接指定提交者信息(把邮箱换成你自己的)
git rebase -r --root --exec "git commit --amend --no-edit --reset-author --committer='john doe <your-email@example.com>'"

# 方式B:先把本地Git配置改成目标信息,再让提交者同步这个配置
git config user.name "john doe"
git config user.email "your-email@example.com"
git rebase -r --root --exec "git commit --amend --no-edit --reset-author --reset-committer"

方法2:只修改单个提交的提交者

如果只需要改某一个提交,先找到该提交的哈希值(比如abc123),然后执行:

git rebase -i abc123~1
# 弹出编辑器后,把要修改的那行开头改成edit,保存退出
git commit --amend --no-edit --committer='john doe <your-email@example.com>'
git rebase --continue

注意点

  • 改完历史提交后,需要强制推送到GitHub:git push --force-with-lease,这个命令比git push --force安全,不会不小心覆盖别人的提交。
  • 如果是多人协作的仓库,改历史提交可能会影响其他人,最好提前跟队友说一声。

内容的提问来源于stack exchange,提问作者user1283776

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 22:21:36