我已经在 GitHub 上接受并 merge 了一个 pull 请求,现在我不能再 pull 我的提交了。
消息是:
! [remote rejected] master -> master (push declined due to email privacy restrictions)
error: failed to push some refs to 'git@github.com:FranckFreiburger/vue-resize-sensor.git'
git did not exit cleanly (exit code 1) (3838 ms @ 12/04/2017 21:23:11)
我现在该怎么办?
最佳答案
远程存储库已配置为不允许您推送会泄露您的个人电子邮件地址的提交。例如在 GitHub 中你检查了 Block command line pushes that expose my email复选框 enable this .
虽然您当然可以取消选中该设置,但它会将您的私有(private)电子邮件地址暴露给世界上的每个人,因为任何有权访问您的存储库的人都可以读取作者信息。
相反,这样做:
您可以看到您的个人电子邮件地址,该地址默认用于您在 Git 中的提交:
git config --global user.email
找到您的 GitHub noreply address在你的 GitHub 的 Personal Settings → Emails . 将我的电子邮件地址保密复选框的描述中提到了它。通常,它以唯一标识符以及您的用户名开头:
{ID}+{username}@users.noreply.github.com
将全局用户电子邮件地址设置更改为您的 GitHub noreply 地址:
git config --global user.email {ID}+{username}@users.noreply.github.com
重置上次提交的作者信息:
git commit --amend --reset-author
如果您使用私有(private)电子邮件地址进行多次提交,请参阅 this answer .
现在您可以使用 noreply 电子邮件地址推送提交,以后的提交也将具有 noreply 电子邮件地址。
git push
关于git - GitHub 消息 : push declined due to email privacy restrictions 的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43378060/