我正在尝试将提交从 GitHub 存储库推送到 ADO 存储库。 GitHub 存储库中的提交是由我和其他一些作者添加的。在将提交推送到 ADO 存储库中的远程分支时,我看到此错误:
VS403702:推送被拒绝,因为一个或多个提交包含作者电子邮件“[email protected]”,与策略指定的模式不匹配。
有办法解决这个问题吗?
好吧,在这种情况下我们需要将作者电子邮件更改为提交中的授权电子邮件,而您的存储库不允许推送。
$ git config user.email [email protected]
$ git commit --amend --reset-author
正如下面评论中所指出的。我们需要在末尾添加
--no-edit
。
$ git commit --amend --reset-author --no-edit
在我的例子中,我将本地提交和签出删除到远程分支,然后在合并后它将其他更新的分支并推送。效果很好
如果您无权更改策略,您仍然可以在 git config 中更改电子邮件后提交代码:
git config user.email "[email protected]"
并重置包含不允许的电子邮件的提交,然后使用更新的电子邮件再次提交。