无法推送这些提交,因为它们包含 GitHub 上标记为私有的电子邮件地址



当我尝试使用 GitHub Desktop 推送我的提交时,它显示此错误"无法推送这些提交,因为它们包含 GitHub 上标记为私有的电子邮件地址">

请帮助我如何解决此错误

其他答案对于将来的提交很好,但对于包含公共电子邮件地址的先前提交没有帮助。 如果您想保持电子邮件的私密性,则应修改先前的提交,而不是更改设置。 使用 git cmd,例如:

git commit --amend --author="ericraider33 <9611418+ericraider33@users.noreply.github.com>"

并填写 GitHub 提供给每个用户的自动生成的电子邮件地址。

转到设置 -> 电子邮件并禁用"保持我的电子邮件地址私密"。

如果您仍然不想公开您的电子邮件地址:

  1. 转到 https://github.com/settings/emails 并保存您的"无回复地址"。

  2. 将您的 git 电子邮件地址设置为此 noreply 地址,可以使用命令git config --global user.email "XXXXXXXX+username@users.noreply.github.com"或在 GitHub Desktop 的首选项中。

  3. 将要推送的更改保存在某个位置。

  4. 还原上次提交中的更改,因为它们是使用以前配置的电子邮件地址签名的。

  5. 还原已保存的更改。

  6. 犯。

  7. 推。

我也遇到了这个问题。在 Github Desktop 中,只需转到"文件"-">"选项"->">Git并清除"用户名"和">电子邮件">字段并保存即可轻松修复。然后,如果您登录到GitHub,它将用正确的信息填写它们。

您可能正在推送使用您的电子邮件地址和 Github 上的设置签名的提交。您可以通过转到 GitHub(浏览器(单击右上角的用户图标 -> 设置 -> 电子邮件并取消选中"阻止暴露我的电子邮件的命令行推送"框来更改此行为,使您的电子邮件不是私有的(就在该选项上方(,或使用公共电子邮件签署您的提交。

如果您使用的是GitHub Desktop,则可以还原提交(转到"历史记录"选项卡并右键单击提交以还原(。然后,将您的电子邮件更改为您的私人电子邮件,然后再次提交。然后你可以推动。

@raider33解决方案有效,但如果您需要对所有以前的提交执行此操作,那么GitHub的"修改较旧或多次提交消息"部分中对其进行了描述

最新更新