苹果热门开源项目首席维护者怒了:GitHub 封停俄罗斯开发者账户,贡献痕迹惨遭删除

简介: 近日,苹果热门开源项目的首席维护者撰文控诉,GitHub 粗暴封停俄罗斯开发者账户,但并没有考虑到后续带来的后果,对涉及封停账户的开源项目带来了“毁灭性”的影响。好在最新的情况是,GitHub 已对此做出了回应与部分修正。

最近一段时间,关于 GitHub 封停俄罗斯账户的消息闹得沸沸扬扬。理由很简单,因俄乌冲突问题,美国政府开始对俄罗斯开发者/开发组织的自有或关联账户实施制裁。

但不知道“痛下杀手”的 GitHub 有没有意识到,他们的一时爽快正在毁灭我的项目。

Quick 项目历史和 PR 请求凭空“消失”了

首先,我给大家简要介绍一下事件背景。

苹果开发者社区中有两个热门项目— Quick 和 Nimble,我最近刚刚接任项目首席维护者。

几天前,我刚刚发布了 Quick 的 5.0 版本。在发布前一周,我一直忙着审查并合并大量 PR 请求。但到了编写发布说明的时候,我突然发现某些奇怪的现象——不少 PR 请求被删除了。

凭空消失,这是什么情况?!

之后我意识到,整个贡献者社群都不见了,包括开放问题、问题评论、甚至是与用户相关的所有痕迹,全都没有了。

例如,大家可以从 GitHub 自动生成的发布说明中看到这样一行:

@BobCatC 在 PR #1129中做出了第一项贡献

但现在,用户账户和 PR 请求都只显示 404 报错页面。唯一剩下的就只有合并提交,这也是整个变更记录剩下的全部内容。这里的 PR#1129 特别值得注意,因为它修复了一个严重 bug。

今天,维护者 Rachel Brindle 打开了另一个修复重要 bug 的 PR 请求。但很遗憾,造成此 bug 的初始 PR 已经被删除:

造成问题的初始 PR 已被删除,所以我无法确定此贡献的确切意图。

离谱的现实让我一度怀疑人生。为什么那么多用户(相关数据),那么多 PR 请求就直接从项目里消失了?

后来在 Tomasz Saptea 的提醒下,我们才意识到这些神秘失踪的信息,源自 GitHub 粗暴封停了俄罗斯开发者的账户,根本没有考虑过这会引发哪些破坏性影响。

Quick 项目有多位贡献者的账户已经被封停,就是说除了初始提交记录之外,他们的所有贡献内容都找不回来了。

涉及封停账户的开源项目受到“毁灭性”影响

我还不清楚 GitHub 接下来要怎么处置这些封停账户。但至少就目前这些涉及账户封停的开源项目来看,造成的影响用“毁灭性”来形容都不为过。

在 Twitter 等社交媒体上,就算是账户被冻结,我们也仍然可以访问相关账户的个人资料,只是会提示该账户处于封停状态。而其他用户的 @操作仍然链接到已封停账户的个人资料。GitHub 可没那么好心,在这边的账户不该叫“封停”,而是被直接“干”掉了。

很明显,GitHub 对于“账户封停”的理解是删除用户的一切活动(痕迹),具体包括:1)删除被封停账户的所有 PR 请求;2)删除封停账户提出的每个问题;3)删除封停账户的一切评论或发言。

实际上,用户的一切活动痕迹都没有了,全部有价值数据都被直接丢进垃圾桶。唯一还在的就只有 Git 初始提交历史。什么叫“人间蒸发”?GitHub 给出了有力的解释。

另外,我也不确定目前的数据丢失到底是 GitHub 的无心之失、还是有意为之。无论如何,产生的后果都相当严重。不通知用户就删掉全部数据,这明显是在滥用权力和信任。如此一来,我们以后还能放心把数据存放在 GitHub 上吗?

我最不能理解的,就是 GitHub 从头到尾也没给出过任何解释或者通知。他们只是强调“我们将继续确保每位用户都能使用到免费的开源服务,也包括俄罗斯开发人员。”我刚接手项目一个多礼拜,也很想做好维护者的工作、努力跟上项目变化。但突如其来的打击实在让我猝不及防。俄乌冲突当然令人痛心,但删掉 GitHub 账户,就能结束这场悲剧?据我所知,这次被影响的都是一些胸怀热情、想要给开源社区做出贡献的普通 iOS 和 MacOS 开发者。

无法找回信息

GitHub 的这些行径无疑给开源项目、乃至整个开源社区都造成了破坏性的影响。一夜之间,那些积极参与项目的贡献者们的 PR 请求、问题和评论全部消失。

现在,我们没办法找回信息、上下文和讨论历史,甚至没法继续正常审查新的 PR 请求。是的,我们手头还有合并 PR 的初始提交记录,但这并不足以支持完整的代码审查和讨论。

光是维护开源项目已经够难的了,继承一个略显陈旧、人气不算太高的项目就更难了。在这种情况下,每一条 PR 请求、问题和评论对于项目的长期维护和发展都显得弥足珍贵。

如果没有这些信息的支持,我们根本没法理解在这样一个多年来流转于不同维护者之间的开源项目,到底是怎样一路发展到今天的。

我认为 GitHub 最好是能保留所有贡献,冻结掉异常账户以阻止其后续操作,并在账户的个人资料页面中明确标记为“封停”。待调查清楚之后,再把账户恢复正常即可。很遗憾,GitHub 并不想费这个劲 —— 删,都给他删喽。

行吧,GitHub,算你狠行吗?

最新:GitHub 已恢复封禁账户发布的 PR 请求等

April 2022 年 4 月 21 日更新

好消息!GitHub 开发者关系高级总监 Martin Woodward 联系到我,表示 GitHub 已经恢复了被封停的俄罗斯开发者账户发布的 PR 请求、问题和评论等。用户个人资料也已恢复,只是仍没有提供封停提示信息。

据他介绍,GitHub 此前之所以粗暴封停账户,是为了预防有恶意人士发送垃圾邮件或者实施其他不当行为。情况紧急,最好的办法就是先把所有账户和活动都撤下来。但我觉得这怎么看也算不是“最好的办法”。总之,感谢 Martin 主动联系我,并帮助我们在 GitHub 上找到更合理的解决办法。

原文链接:

https://www.jessesquires.com/blog/2022/04/19/github-suspending-russian-accounts/

目录
相关文章
|
11月前
|
JSON Kubernetes 安全
找到啦,我们已上车,Github 27000+ star,研发团队必备开源工具项目,真丝滑!!!
Trivy 是一款高效灵活的开源安全扫描工具,支持容器镜像、文件系统、Kubernetes 等多目标扫描,具备快速、易用、集成性强等特点,适用于 DevSecOps 全流程安全检测。
406 0
|
11月前
|
数据挖掘 调度 开发工具
Github 2.3k star 太牛x,京东(JoyAgent‑JDGenie)这个开源项目来得太及时啦,端到端多智能体神器!!!
JoyAgent-JDGenie是京东开源的端到端产品级多智能体系统,支持自然语言生成报告、PPT、网页等内容,准确率达75.15%。具备开箱即用、多智能体协同、高扩展性及跨任务记忆能力,支持多种文件格式输出,部署灵活,不依赖私有云平台。适合企业自动化报告生成、数据分析与行业定制化应用,是高效、实用的开源AI工具。
1709 0
|
11月前
|
安全 数据可视化 项目管理
精品,Github 5000+ star,小型研发团队必备商业开源项目
DooTask 是一款开源在线项目任务管理工具,具备文档协作、流程图、任务分发、IM沟通等功能,支持私有部署与数据加密,已在 GitHub 获得 5000+ 星标,适合中小团队提升协作效率。
925 0
|
人工智能 数据安全/隐私保护 计算机视觉
GitHub爆款神器 | IOPaint:21.7k star 开源AI图像修复项目,竟能秒删水印、拓展画幅!
IOPaint 是一款由 Sanster 团队开发的开源图像处理工具,集成多种 SOTA AI 模型,支持图像擦除、对象替换、文本绘制和图像外扩等功能。它操作简便,一键安装,适用于 Windows、macOS、Linux 和 Apple Silicon 系统,适合摄影爱好者、电商从业者及内容创作者使用,大幅提升图像处理效率。
2418 0
|
人工智能 搜索推荐 物联网
GitHub热搜,腾讯黑科技炸场!PhotoMaker:10秒定制真人级头像,百万开发者已疯狂
PhotoMaker 是腾讯 ARC 联合南开大学推出的高效人像生成项目,荣膺 CVPR 2024。支持输入人脸照片与文本描述,秒级生成高保真图像,兼容多种风格与插件,无需额外训练,广泛适用于头像定制、影视后制、虚拟角色创建等场景。
244 1
|
人工智能 Serverless API
TaskingA在GitHub上已突破 5.1k stars!这是一个真正被开发者认可的 AI Agent平台,AI开发者必看,如何用它实现生产力逆袭?
TaskingAI 是一个 AI-native 应用开发平台,通过整合模型、检索、助手与工具模块,为开发者提供一站式的 BaaS(后端即服务)体验,简化 AI 应用从开发、测试、到部署的全过程 。
342 5
|
11月前
|
人工智能 数据可视化 开发者
惊艳!GitHub 开发者一键接入!4.2k star 项目 Champ,用一张照片秒变动画
“Champ” 致力于从一张静态人物图生成流畅连续的人体动画,支撑精准姿态控制与形状一致性,其核心思路是将 3D 参数化人体模型(SMPL)引入扩散模型:
320 0
|
12月前
|
网络安全 开发工具 git
GitHub 多账户 SSH 配置指南
本文介绍了如何在同一台电脑上配置多个 GitHub 账户的 SSH 密钥。内容包括:检查现有密钥、生成新的 SSH 密钥、配置 SSH config 文件、将公钥添加到 GitHub、验证 SSH 连接、设置 Git 用户信息、创建工作区目录、使用不同账户克隆仓库,以及为每个仓库配置独立的用户信息等步骤。通过这些操作,可以实现在不同项目中使用不同的 GitHub 账户进行提交和管理。
840 0
|
机器学习/深度学习 人工智能 自然语言处理
PeterCat:一键创建开源项目 AI 问答机器人,自动抓取 GitHub 仓库信息、文档和 issue 等构建知识库
PeterCat 是一款开源的智能答疑机器人,能够自动抓取 GitHub 上的文档和 issue 构建知识库,提供对话式答疑服务,帮助开发者和社区维护者高效解决技术问题。
1198 7
PeterCat:一键创建开源项目 AI 问答机器人,自动抓取 GitHub 仓库信息、文档和 issue 等构建知识库
|
安全 项目管理 开发工具
探索 GitHub:现代开发者的协作平台
GitHub 是一个基于 Git 的版本控制和协作平台,广泛应用于软件开发和项目管理。它不仅提供代码托管服务,还是开发者社区和开源项目的重要平台。本文介绍了 GitHub 的核心功能(如代码托管、协作工具、CI/CD 集成等)、使用技巧(如规范化提交信息、参与开源项目等),帮助开发者提升效率和协作能力。GitHub 自2008年成立以来,已成为全球最大的代码托管平台,支持团队协作和项目管理。