Bug+1: 用终端commit GitHub远程仓库时用户识别错误

Author Avatar
Kɑibin Yɑng 10月 24, 2020
  • 在其它设备中阅读本文章

本文共计427字,大约需要1分钟进行阅读。

本文同步在我的知乎发布。如果觉得不错可以去点一点赞、喜欢……
Bug+1: 用终端commit GitHub远程仓库时用户识别错误 - 知乎
这是一篇比较水的文章。

闲着没事去本博客所在的GitHub repo看了看,结果发现一堆其他人的commit。
本repo的commit历史页面

遂点开commit详情查看内容,发现确实是我提交的东西。。。
这我就很奇怪了,于是打开那个人的首页,发现并没有看到有在我的repo里有过任何提交。。。
神秘人物的GitHub首页

难道这是个bug?

于是乎我去联系了GitHub Support,发现是我在复制GitHub提供的no-reply邮箱地址的时候少了一位,结果出现了这样的问题。

但是我很好奇的是,为什么会出现这样的问题,因为我只是填错了邮箱地址,但是我的GitHub Personal Access Token是正确的。也就是说,我用一个不存在的邮箱地址,以及SkyYkb的Token,就能把commit放到别人的名义下面去,虽然并不会在别人的首页显示。

仿佛看到了什么危险的东西啊。。。

解决方案

经过一番Google,发现一个Gist提供了解决方案:

1
git rebase -i HEAD~<number of commits> -x "git commit --amend --author 'Author Name <[email protected]>' --no-edit"

但是缺点是会导致在GitHub上显示出的commit时间是你执行之后的时间。
但无论如何作者变回来了。
但是在GitHub的边栏仍然会留有那个神秘人物的名字。
边栏上的Contributors

这个时候就直接找GitHub Support说明情况就可以了。或者稍微等一等也可以。

本文以YKBPL授权转载。
本文链接:https://kaibinyang.com/2020/bug-GitHub-commits-error-user/