Fra*_*ger 163 git github git-push
我已经接受并合并了github上的Pull Request,现在我不能再提交我的提交了.
消息是:
! [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)
Run Code Online (Sandbox Code Playgroud)
我现在应该怎么做 ?
Dan*_*ker 320
远程存储库已配置为禁止您推送会泄露您的个人电子邮件地址的提交.例如,在GitHub中,您已选中阻止命令行推送显示我的电子邮件复选框以启用此功能.
虽然您当然可以取消选中该设置,但它会将您的私人电子邮件地址公开给世界上的每个人,因为任何有权访问您的存储库的人都可以读取作者信息.
相反,这样做:
您可以看到您的个人电子邮件地址,默认情况下用于Git中的提交:
git config --global user.email
Run Code Online (Sandbox Code Playgroud)在GitHub的个人设置→电子邮件中找到您的GitHub noreply地址.在" 保持我的电子邮件地址专用"复选框的说明中提到了它.通常,它以唯一标识符和用户名开头:
{ID}+{username}@users.noreply.github.com
Run Code Online (Sandbox Code Playgroud)
将全局用户电子邮件地址设置更改为您的GitHub noreply地址:
git config --global user.email {ID}+{username}@users.noreply.github.com
Run Code Online (Sandbox Code Playgroud)重置上次提交时的作者信息:
git commit --amend --reset-author
Run Code Online (Sandbox Code Playgroud)
如果您的私人电子邮件地址有多个提交,请参阅此答案.
现在,您可以使用noreply电子邮件地址推送提交,并且将来的提交也将具有noreply电子邮件地址.
git push
Run Code Online (Sandbox Code Playgroud)Jor*_*wis 131
这可能是由于新的GitHub设置阻止了暴露您的电子邮件地址的命令行推送.
尝试取消选中电子邮件设置中的"阻止命令行推送我的电子邮件"框,然后再次按下.
小智 21
您可以使用 3 个选项:
1 . 您可以Keep my email addresses private在GitHub 电子邮件设置中取消选中您的。
2 . 如果您想隐藏存储库的电子邮件,GitHub 在 GitHub 电子邮件设置中提供了 noreply 电子邮件地址
由于您启用了电子邮件隐私,因此将用于帐户相关通知以及密码重置。
34661293+aslancan32@users.noreply.github.com 将用于基于 Web 的 Git 操作,例如编辑和合并。
git config --global user.email "<your-noreply-github-email>"
Run Code Online (Sandbox Code Playgroud)
3-或者您可以使用公共电子邮件或企业电子邮件作为您的存储库。喜欢m****@business.com
git config --global user.email "<your-public-email>"
Run Code Online (Sandbox Code Playgroud)
应用到您的设置后,我建议运行重置标头代码:
git reset --soft HEAD~1
Run Code Online (Sandbox Code Playgroud)
再次尝试访问push您的存储库
Emailsgithub.com 的开放部分。访问https://github.com/settings/emails。Keep my email addresses private部分并记下您的donotreply电子邮件 ID。git terminal并将您的donotreply电子邮件 ID设置为您的电子邮件 ID:git config --global user.email "<your_donotreply_email_id"
Run Code Online (Sandbox Code Playgroud)
git reset --soft HEAD~1
Run Code Online (Sandbox Code Playgroud)
git add .
git commit –m "<commit_message>"
git push
Run Code Online (Sandbox Code Playgroud)