首页 > 解决方案 > GitKraken 推送失败,隐私限制

问题描述

我想在 Windows 10 上尝试 GitKraken,但我不断收到此错误

Push failed on refs/heads/master: push declined due to email privacy restriction

我不想更改 GitHub 上的隐私设置,你知道如何解决这个问题吗?

标签: windowsgitgithubrestrictiongitkraken

解决方案


GitHub 博客 中所述,发生这种情况是因为您尝试推送包含您的真实电子邮件地址的提交,并且您已将 GitHub 配置为阻止这样做的推送。

首先,运行git config --show-origin --get user.email以找出您的电子邮件地址的设置位置。如果您没有看到任何输出,则可能是在EMAIL环境变量中设置了它。更改配置文件或环境变量以使用 GitHub 为您提供的屏蔽地址。

然后,使用git log --format=fuller查找分支上包含您的真实电子邮件地址的提交,然后找到该提交之前的提交。例如,它可能是以 . 开头的提交abc1234

然后,运行git rebase -x 'git commit --amend --no-edit --reset-author' abc1234(替换真实的提交 ID),您的提交将被重写以使用新的电子邮件地址。请注意,这会将您提交的所有时间戳更改为现在,这是不容易避免的。你需要一个相当新的 Git 版本才能工作。

如果您想更改此分支中的所有提交,回到最开始,请git rebase -x 'git commit --amend --no-edit --reset-author' --root改用。


推荐阅读