因此,我们的团队已经在Github的一个项目上工作了几个月。事实证明,我们的一个团队成员错误配置了他的本地git bash shell,并且正在使用其中包含拼写错误的电子邮件地址。
提交已经被推送到远程,并且完全根植于存储库的历史记录中。
我们尝试了注册拼写错误的电子邮件地址,然后将其与当前的GitHub帐户相关联的选项,但该电子邮件是不再可以注册的域的一部分(旧的Windows @live.com
地址),所以这无法完成。
我们可以访问此团队成员的贡献统计数据非常重要,我们还希望将该工作与其帐户公开关联,以便构建投资组合。
有没有选择?
编辑:
我在本文评论中链接的问题中运行了为此目的提到的脚本,但问题提交中的作者已替换为soandsoemailname@10.100.220.47
而不是soandsoemailname@live.com
。是什么赋予了?我想知道这是正确的,然后我强行推动并弄乱一切。
答案 0 :(得分:1)
这应该与脚本mentioned in Yu-Lin Chen's comment具有类似的效果,但在命令行上显示它。您可能会发现使用它避免转义/解决问题更容易:
git filter-branch -f --env-filter "if [[ \$GIT_AUTHOR_EMAIL = 'bademail@live.com' ]]; then GIT_AUTHOR_EMAIL=goodemail@live.com; fi" HEAD
您可能还想重写提交者:
git filter-branch -f --env-filter "if [[ \$GIT_COMMITTER_EMAIL = 'bademail@live.com' ]]; then GIT_COMMITTER_EMAIL=goodemail@live.com; fi" HEAD