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

Author Avatar
Kaibin Yang 10月 24, 2020
  • 在其它设备中阅读本文章

本文同步在我的知乎发布。如果觉得不错可以去点一点赞、喜欢……
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说明情况就可以了。或者稍微等一等也可以。

若正文中没有特别说明,文章以CC BY-NC-SA 3.0 协议授权转载。
If there isn’t a reprint limit in article content, you can reprint under CC BY-NC-SA 3.0 License.

本文链接:https://kaibinyang.com/2020/10/24/Bug-1-%E7%94%A8%E7%BB%88%E7%AB%AFcommit-GitHub%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%E6%97%B6%E7%94%A8%E6%88%B7%E8%AF%86%E5%88%AB%E9%94%99%E8%AF%AF/