不小心将仓库私有化,这个开源项目失去了 54k GitHub Stars

简介: 近日,开源项目 HTTPie 的创始人 Jakub Roztocil 发文表示因项目短暂私有,而丢失了原来的 54k star,运营十年的社区也被 GitHub 删除。

“乌龙”操作?起因只是想隐藏另一项目简介

据 Jakub 介绍,作为一个开源的 CLI HTTP 客户端,HTTPie 从 2012 年 2 月 25 提交第一个公开版本开始,截止 2022 年,累计在 GitHub 上收获了了 54k 的星星,HTTPie 也通过 GitHub 社区一步步成为非常受欢迎的 API 工具,两个月前 HTTPie 还庆祝了项目第一次提交 10 周年。

image.png

对于这起乌龙事件,Jakub 解释道,他其实知道将代码仓库设置为私有,就会永久删除所有关注者和星级,显然他也无意将 HTTPie 私有化。情况是他在事情发生一周之前创建了一个新的仓库,当他在操作隐藏项目简介时混淆了新的仓库与原来的 HTTPie 项目,从而不小心将 HTTPie 项目私有化,导致项目星星消失。

操作完成后,Jakub 第一时间并未发现异常,后面 Jakub 进行问题排查时才发现是 GitHub 在项目名称与提示上不太直观导致自己出现重大失误。如下图所示,仅有的不同是底部的 name/name 与 name/.github ,这让他没有意识到自己操作上的严重失误,他认为 GitHub 应该提供更多的提示,比如“你即将杀死 55000 人”,这肯定会让他停下来。

image.png

GitHub 拒绝提供恢复服务

GitHub 官方项目也曾出现过不小心将仓库私有化造成损失的情况。在 2020 年,GitHub Desktop 应用将自己仓库设置为私有,几个小时后项目就恢复正常了。Jakub 团队也向 GitHub 发出了恢复备份的请求。

image.png

由此可见,“GitHub 显然是有备份的”, Jakub 说到。不过在 HTTPie 这个项目中,GitHub 拒绝了 Jakub 的请求,理由是“不理想的副作用和资源成本”,Jakub 还提出向 GitHub 提供经济补偿以恢复项目星级不过也被拒绝了。

对于此情况,GitHub 也在事故发生后发表了一篇推文进行解释并为项目重新推广。

image.png

经过这次“乌龙”事件,Jakub 事后总结了一些经验教训。

  • 在 UI 设计上展示出来,而不是用一种抽象的让用户思考的方式去进行设计,特别是在涉及删除的功能上;
  • 数据库设计上使用软删除;
  • 抛弃在运营开源项目上天真的想法。

同时他们表示,尽管 GitHub 上的星星已经消失,但是 HTTPie 已经变得足够好,用于 Web 个桌面的 HTTPie 测试版也得到了很好的反馈,未来团队会将 HTTPie 发展成为优秀的 API 开发平台。

开发者态度呈两极化

在 Hacker News 的讨论中,开发者多为两极分化的声音。

有开发者认为 Jakub 在经验总结中的内容非常重要,不管是 UI 设计还是数据库软删除,都是值得所有人学习的经验。

另一类开发者持反对意见,他们认为 Jakub 总结的内容是将所有的责任都归咎于 GitHub,这是非常奇怪的,现在的 GitHub 已经很难犯这样的错误。他们还拿出来 rm 的例子进行解释。许多人使用 rm 误删除了内容,但不能将过错归结于 rm 技术本身。

对于作者抱怨 GitHub 不恢复项目的情况,也有开发者提到:“GitHub 当然可以恢复备份,但如何决定哪些用户应该得到特殊待遇,如果 GitHub 开始为部分用户提供备份,更多的人会期待同样的事情。”

参考链接:

https://httpie.io/blog/stardust

目录
相关文章
|
3月前
|
编解码 Oracle Java
java9到java17的新特性学习--github新项目
本文宣布了一个名为"JavaLearnNote"的新GitHub项目,该项目旨在帮助Java开发者深入理解和掌握从Java 9到Java 17的每个版本的关键新特性,并通过实战演示、社区支持和持续更新来促进学习。
101 3
|
3天前
|
Devops Shell 网络安全
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
PeterCat:一键创建开源项目 AI 问答机器人,自动抓取 GitHub 仓库信息、文档和 issue 等构建知识库
PeterCat 是一款开源的智能答疑机器人,能够自动抓取 GitHub 上的文档和 issue 构建知识库,提供对话式答疑服务,帮助开发者和社区维护者高效解决技术问题。
50 7
PeterCat:一键创建开源项目 AI 问答机器人,自动抓取 GitHub 仓库信息、文档和 issue 等构建知识库
|
13天前
|
人工智能 前端开发 Linux
github是怎么用的,如何下载仓库
github是怎么用的,如何下载仓库
|
2月前
|
存储 Linux 数据安全/隐私保护
一键部署 200+ 开源Github 2k+ 星星的软件
Websoft9面板是一款基于Web的PaaS/Linux面板,支持在个人服务器上一键部署200多种热门开源应用,适用于个人开发者、中小企业、创业团队、教育机构和技术爱好者。它集成了丰富的开源软件,提供便捷的部署方式、高效的资源利用、良好的可扩展性及低技术门槛,帮助用户快速搭建和管理各类应用。
|
3月前
|
对象存储
一个通过 GitHub Action 将 GitHub 仓库与阿里云 OSS 完全同步的脚本
一种将 GitHub 仓库完全同步到阿里云 OSS 的方法。
|
3月前
|
编解码 人工智能 自然语言处理
MaskGCT:登上GitHub趋势榜榜首的TTS开源大模型
近日,香港中文大学(深圳)联手趣丸科技推出了新一代大规模声音克隆TTS模型——MaskGCT。一起看看该模型的一些表现吧!
|
5月前
|
存储 安全 Java
【事故】记一次意外把公司项目放到GitHub并被fork,如何使用DMCA下架政策保障隐私
在一次意外中,作者因三年前将测试代码遗忘在GitHub上而遭遇了代码被他人fork的问题。为解决这一危机,作者详细介绍了如何通过GitHub的DMCA下架通知流程安全删除敏感代码,包括处理私人信息和商标侵权的具体步骤。本文不仅提供了实用的操作指南,还强调了及时响应的重要性,帮助读者避免类似风险
88 1
【事故】记一次意外把公司项目放到GitHub并被fork,如何使用DMCA下架政策保障隐私
|
3月前
|
数据采集 应用服务中间件 Go
开源的键鼠共享工具「GitHub 热点速览」
开源的键鼠共享工具「GitHub 热点速览」
|
5月前
|
人工智能 Rust JavaScript
Github 2024-08-26 开源项目周报Top15
根据Github Trendings的统计,本周共有15个项目上榜。以下是按开发语言汇总的项目数量:Python项目8个,TypeScript、C++ 和 Rust 项目各2个,Jupyter Notebook、Shell、Swift 和 Dart 项目各1个。其中,RustDesk 是一款用 Rust 编写的开源远程桌面软件,可作为 TeamViewer 的替代品;Whisper 是一个通用的语音识别模型,基于大规模音频数据集训练而成;初学者的生成式人工智能(第2版)则是由微软提供的18门课程,教授构建生成式AI应用所需的知识。
160 1