Git 提交遇见 fatal: --author ~*~ is not ‘Name <email>‘ and matches no existing author 使用 --author 时格式不合法

       翻译:致命错误:--author 'wfyl@wfyl.com' 不符合 '姓名 <邮箱>' 格式且未匹配到现有作者

       你遇到的这个 Git 报错,核心原因是 使用 --author 参数时格式不合法——Git 要求 --author 必须遵循 姓名 <邮箱> 的格式(如 吴玉缸 <wfyl@wfyl.com>),但你只传了邮箱 wfyl@wfyl.com,缺少「姓名」部分,且这个纯邮箱格式也匹配不到 Git 已配置的作者信息,因此触发报错。

解决方案(两种场景,按需选择)

场景 1:临时指定作者提交(单次生效)

如果只是想临时用这个邮箱 + 姓名提交代码,直接按 Git 要求的格式填写即可:

# 正确格式:姓名 <邮箱>
git commit --author="吴玉缸 <wfyl@wfyl.com>" -m "提交说明:修复XX问题"
  • 把「吴玉缸」替换为你想显示的作者姓名(任意名称均可,比如 wfyl);
  • -m 后是提交备注,按需修改。
场景 2:全局配置 Git 作者信息(永久生效,推荐)

如果想长期使用这个邮箱作为提交作者,先全局配置姓名和邮箱,后续提交无需再手动指定 --author

# 1. 配置全局作者姓名(替换为你的名字,比如 wfyl 或 吴玉缸)
git config --global user.name "吴玉缸"

# 2. 配置全局作者邮箱(你的 wfyl@wfyl.com)
git config --global user.email "wfyl@wfyl.com"

# 3. 验证配置是否生效
git config --global --list | grep user

执行验证命令后,会输出:

user.name=吴玉缸
user.email=wfyl@wfyl.com

说明配置成功,之后直接执行 git commit -m "提交说明" 即可,无需再加 --author 参数。

补充说明

  1. 格式要求的底层原因:Git 的作者信息(Author)本质是「姓名 + 邮箱」的组合,用于标识提交者,纯邮箱无法满足 Git 的元数据格式要求,因此必须包含姓名部分(哪怕姓名和邮箱前缀相同,如 wfyl <wfyl@wfyl.com>)。

  2. 修改已提交的作者信息(若需修正历史提交):如果已经提交了错误格式的记录,想修正历史提交的作者信息,可执行:

    git commit --amend --author="吴玉缸 <wfyl@wfyl.com>"
    

    该命令会修改最后一次提交的作者信息,适合刚提交完发现格式错误的场景。

  3. 常见错误规避

    • 不要遗漏 <> 包裹邮箱(比如写成 吴玉缸 wfyl@wfyl.com 也会报错);
    • 姓名和邮箱之间必须有空格(比如 吴玉缸<wfyl@wfyl.com> 少空格也会触发格式错误)。

总结

  1. 报错核心是 --author 参数格式不符合 Git 要求,必须是 姓名 <邮箱> 格式;
  2. 临时提交用 git commit --author="姓名 <邮箱>" -m "备注"
  3. 长期使用建议先全局配置 user.nameuser.email,后续提交更便捷。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值