18 岁 GitHub“萌新”提交 PR,意外“轰炸”了近 40 万名开发者......
Posted CSDN资讯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了18 岁 GitHub“萌新”提交 PR,意外“轰炸”了近 40 万名开发者......相关的知识,希望对你有一定的参考价值。
整理 | 郑丽媛
出品 | CSDN(ID:CSDNnews)
提起 18 岁,你会想到什么?有人会回想起那段专心备战高考的日子,有人会畅想理想中的大学生活,也有人已经开始为成年后的自己未雨绸缪——如今 18 岁的程序员“萌新” Rohith Sreedharan 就是这样(其推特简介有一句“一位 18 岁的青少年”)。
可能是出于练手,也可能是为了给简历“润色”,上周五 Rohith Sreedharan 向全球知名游戏公司 Epic Games 的 GitHub 仓库提交了一个“可以但没必要”的 PR(旨在优化 README 文件中的几个措辞问题及 Logo 尺寸)。
殊不知,这个 PR 所引发的后续,真的可谓为其简历添上了“浓墨重彩”的一笔:导致邮件“轰炸”了约 40 万名开发者,这起事件还被列入了维基百科。
提交一个PR,通知近 40 万名开发者
简单来说,这件事的起因就是 Rohith Sreedharan 向 Epic Games 提交了一个没什么技术含量的 PR——提交 PR 没问题,PR 没啥技术含量也没问题,可问题在于 Rohith Sreedharan 在提交了这个 PR 之后,为了让自己的 PR 尽快被合并,在评论中 @ 了一个账号:@EpicGames/developers。
可能在 Rohith Sreedharan 看来,一个账号只对应一个人或一个组织,其消息也只会提醒他 @ 的账户持有者。但意外的是,按照虚幻引擎 GitHub 源代码访问规定显示,凡欲访问项目源代码者,需先加入 Epic Games 组织。
也就是说,这个“@EpicGames/developers”涉及的不只是一个人或少数几个人的团体,而是当时人数高达 398463 名的 Epic Games 组织全体成员。
结果可想而知:Rohith Sreedharan 提交的这个 PR,被以邮件的方式通知给了这近 40 万名开发者。
PR 本身也存在不少问题
更离谱的是,只要这 40 万名开发者中有人对 Rohith Sreedharan 的这个 PR 留言评论,其评论也会被邮件通知给 Epic Games 组织的全体成员,即他们将集体陷入邮件“轰炸”之中。
这种情况下,如果 Rohith Sreedharan 提交的这个 PR 没有问题最好不过,可很多收到通知的开发者在查看该 PR 之后却发现了不少问题,由此又引发了大量评论及相应的邮件通知。
-
“这是在用更多的错别字来改正错别字。”
-
“你的补丁所造成的问题与该修复的问题一样多,甚至你的 PR 都没有描述它在解决什么问题。”
很快,有开发者指出手动取消订阅该 PR 的方法:“右栏中有一个‘取消订阅’按钮,几乎在底部、参与者列表的正上方。单击它并忽略即将传入的大量通知。”之后,Epic Games 方面在知情后也尽快锁定了该 PR,关闭其评论功能。
不过由于 GitHub 的邮件通知服务因此受到影响,出现了邮件发送延迟的情况,即开发者事后可能仍会陆续收到此前积压未及时发出的邮件。
在推特道歉:“我不知道会发给 40 万名成员”
无意用邮件“轰炸”了近 40 万名开发者的后果使得 Rohith Sreedharan 自身十分愧疚,他特地在推特发布了一则推文表示歉意:
“我非常抱歉,我不知道会有 40 万名成员被标记,真心为这些垃圾邮件感到非常抱歉,向包括 @EpicGames 和 @github 在内的所有团队道歉,没想到会发生这种事,谢谢你们通知我!我保证这种事不会再发生了。”
不仅如此,这件事对于年仅 18 岁的 Rohith Sreedharan 而言,显然有些不能承受且后怕:“我担心我的 GitHub 账号被禁”、“FBI(联邦调查局)会查吗?”、“我真的开始感觉我快要死了…”
面对这位 18 岁少年的道歉与担忧,大多开发者留言表示理解和安慰,并提出 GitHub 应优化机制,避免此类事件再次发生:
-
“这不是你的错,因为系统没有阻止你这样做:1)在发送消息之前,系统应非常清晰地显示谁会收到你的通知;2)不应该在我们的权限级别下对所有的 repo 参与者进行通知。”
-
“将问题归咎于 GitHub 系统吧。如果不是你,也会有其他人可能会触发相同的问题,这可能会产生其他不好的影响。也就是说,你在下一次问题发生之前就指出来并挽救了它,这没有什么好担心的。”
对于这些建议,GitHub 高级工程总监 Shay Frendt 留言回应称:“很抱歉,我们当前的系统设计导致你们陷入这种情况。我们正在努力发布补丁,以尝试中断你们都陷入的反馈循环。”
也有开发者轻松调侃道:“现在你可以把这件事写在你的简历上:通过向 Epic Games 的 GitHub 库提交 PR,将 GitHub 变成了发送骚扰邮件的僵尸网络。”
最有趣的是,还有人留言指出,这件事还作为例子被加入了“Email storm(电子邮件风暴)”的维基百科词条中:
对此,18 岁的 Rohith Sreedharan 再度震惊:“在维基百科啊!!”
那么,你对于这起事件有何看法,欢迎留言分享!
参考链接:
-
https://github.com/EpicGames/Signup/pull/24
-
https://twitter.com/Rohithaditya/status/1533305205697130497
-
https://en.m.wikipedia.org/wiki/Email_storm
以上是关于18 岁 GitHub“萌新”提交 PR,意外“轰炸”了近 40 万名开发者......的主要内容,如果未能解决你的问题,请参考以下文章
Tomcat的故事(内容纯属虚构,18岁以下请在父母陪同下阅读)
如何在 GitHub Action 中使用 GitHub cli (gh) 向 Github 进行身份验证并创建 PR?