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

Git提交者姓名异常求助:修改配置后仍无法推送代码

解决Git提交作者信息错误导致无法推送的问题

问题核心:你修改的git config是控制新提交的作者信息,但已经存在的待推送(或已推送到远程)的提交里,作者还是旧的"Menzer",仓库的校验规则(比如要求提交作者信息匹配账号)因此拦截了推送。

以下是具体解决步骤:

  • 先确认问题提交:执行git log --format="%an <%ae>",查看最近提交的作者姓名和邮箱,确认哪些提交是错误的"Menzer"。
  • 修改单个最新提交:如果只有最后一个提交有问题,运行git commit --amend --author="Menzner <你的关联邮箱>",替换成正确的姓名和邮箱,保存后重新尝试推送。
  • 修改多个历史提交:如果有多个错误提交,用交互式变基:
    1. 执行git rebase -i HEAD~N(N是你要修改的提交数量,比如最近3个就写3)
    2. 在弹出的编辑界面里,把所有需要修改的提交前的pick改成edit,保存退出
    3. 每遇到一个待修改的提交,运行git commit --amend --author="Menzner <你的关联邮箱>",修改后执行git rebase --continue,直到所有提交处理完成
  • 强制推送(仅当远程分支没有其他人修改时使用):如果错误提交已经推送到远程,且没有其他协作者基于这些提交开发,执行git push --force-with-lease origin 你的分支名,这个命令比--force更安全,不会覆盖其他人的新提交。
  • 额外校验:
    • 确认本地仓库的单独配置:运行git config --local user.name和git config --local user.email,本地仓库的配置优先级高于全局,可能你之前只改了全局但本地还是旧值(虽然你说config --list显示正确,还是可以快速确认)
    • 检查Git客户端设置:如果你用VS Code、SourceTree等客户端,有些工具会单独存储作者信息,需要在客户端设置里同步修改正确的姓名和邮箱

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 20:10:25