V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ulyc
V2EX  ›  分享发现

分享一个代码托管平台, sourcehut

  •  
  •   ulyc · 2022-08-16 09:07:51 +08:00 · 2578 次点击
    这是一个创建于 867 天前的主题,其中的信息可能已经有所发展或是发生改变。

    一. Feature

    • 绝对没有跟踪或广告
    • 许多功能无需账户即可使用
    • 最快和最轻的软件仓库
    • 100%的自由开源软件( FOSS )

    好吧,以上是sourcehut 官网列出的 Feature ,好像听起来也就那样?

    但是我要说,如果用一句话来评价 sourcehut 的话,应该是:

    sourcehut 融合了黑客的核心智慧和雅致的 Web 界面。

    如果不想看我废话,直接体验的地址 点击

    是的,古典得像是上个世纪的 UI , 点进项目主页也看不到熟悉的 issue/PR/fork/start 。

    有点像是换皮的Gitweb 或者 CGit,不过它远没有这么简单。

    二. 真正的 Feature

    我无意对他们官网进行机翻, 这里说下他们吸引我的地方吧:

    • 简洁的 Web UI
    • 模块化
    • 古典而反潮流的工作流
    • 强大的持续集成

    1. 简洁的 Web UI

    其实我开始就是被他们的 UI 风格吸引而入的坑,太有那个味儿了。

    2. 模块化

    非常经典的 Unix 设计哲学,“Do one thing and do it well”。

    整个平台由许多单独的服务组成,高度模块化,每个服务只做一件事,做好一件事,所有模块可以自由组合,按需使用。

    例如 git.sr.ht 就只做 Git 的代码托管, todo.sr.ht 就只做 issue 和 bug 的追踪,而账号管理又是meta.sr.ht模块来做。

    关于更详细的各个模块的介绍可以看下面的 [各模块介绍](#三. 各模块介绍) 。

    3. 古典而反潮流的工作流

    这就是 sourcehut 最具争议,而也是 sourcehut 之所以为 sourcehut 的一点:

    彻底抛弃 Pull/Request 的工作流,而回归最古老的去中心化方式————邮件列表( Email-List )。

    很多人一提到开源项目工作流,可能首先想到的就是 PR 模型,对于邮件列表的形式维护代码比较陌生。

    首先 PR 并不是 Git 本身的一种功能,然后他的历史并不久远,毕竟 2008 年 Github 才正式上线。

    而 上世纪 80 年代中期,Richard Stallman 就发起了 自由软件运动(Free Software Movement),邮件列表那时就被广泛使用。

    很多 Git 项目,包括 Git 本身,以及很多古老的大型项目,都是通过邮件列表来维护的。

    邮件列表有以下一些显而易见的优点: - 邮件列表会将更新转发给所有列表订阅者,任何人都可以轻松地将它们变成另一个公共存档,独立于 sourcehut 。 - 这样的存档也可用于以标准文件格式一键导出和导入列表管理员。使用 DKIM 和 PGP 签名等,您甚至可以跨任意来源保持这些消息的真实性。 - 不依赖一个中心化的代码仓库

    在如今这个时代,拥抱邮件列表,完全不用 PR ,无疑是反叛的,同时也具有一种对古典传统方式的卫道者精神。

    当然有很多人质疑,认为这会阻碍 sourcehut 的发展,以及扩大用户群体。对此,sourcehut 创始人 Drew DeVault 这么认为:

    -  我们更愿意教人们如何使用强大的工具,而不是制作更容易使用的不太强大的工具。我不相信用户没有能力学习新事物。
    -  我没有最大化 sourcehut 的可能用户群。我正在为那些认为这些原则值得的人构建一个体现我的开发原则的平台。
    -  (相对于邮件列表)PR 模型并不容易使用,您只是已经知道如何使用它
    -  sourcehut 无意成为 Github 的另一个模仿者(Clone)
    -  对,它(sourcehut)不是革命性的
    

    如果你对邮件列表这种形式比较感兴趣,这里有一些教程和资源:

    4. 强大的持续集成 CI

    • 在各种 Linux 发行版和 BSD 上运行完全虚拟化的构建
    • 提交临时 Job ,而不需要推送到你的版本库中
    • 为电子邮件、webhooks 等提供构建后触发器
    • 构建失败后可以用 SSH 登录以进一步调查

    很多知名项目,比如 Zig, Nim, NeoVim 等都单独使用它的 CI 模块。 是的,如前所述,你可以不用 sourcehut 托管代码而单独使用它的任意模块。

    5. 官网 Feature 的一些注解

    最快和最轻的软件仓库

    • 这是他们完 全 客 观的, 和 Gitea Gitlab 等的性能对比

    绝对没有跟踪或广告

    • 可以做到 0 JS ,不搜集用户隐私
      • 想想 Gitlab , 如果禁用了 JS 根本就不能用
    • 试试如果挂着 Tor ,哪些平台能工作得很好
    • 就算被 Gov 施压,也不会突然删除你的代码,而会给你留出充分的时间备份,并向你道歉(
    • 也绝不会扫你的公开或私人仓库投喂人工智能 ,确实是个隐私友好的好 Code Forge
    • 官方的 Nginx 配置:

    无需注册账户

    • 使用 git-email 的工作流,贡献代码完全不需要注册账户

    100%的自由开源软件( FOSS ) 以及 付费

    所有代码都是自由 和 开源的,你可以自由分发改写使用它们,同时注册免费账号来贡献代码。 不过创建自己的代码仓库和项目,以及其他功能,只对付费用户开放。(不过目前项目仍处于 alpha 阶段,付款不是强制的,但仍期待您付费

    为什么付费?

    托管这些服务不是免费的,甚至也不便宜。钱必须来自某处。

    大多数其他公司都是由风险资本提供财政支持的,其形式是由少数人的大量投资。如果你免费使用他们的服务,或者即使你为他们的付费计划支付适度的费用,他们也没有动力首先为你的需求服务。他们对投资者负责,在他们的要求下,他们可能实施你不喜欢的变化:侵入性跟踪,出售你的数据,等等。

    sourcehut 没有接受,也永远不会接受任何外部投资。我们唯一的收入来源是来自 sr.ht 用户的账户支付。这激励我们只考虑你的需求,而不是将你作为一种资源来利用。这种财务关系对双方都更加负责。

    与 GitHub 和 GitLab 不同,你的 sr.ht 订阅费用会留在开源之中。sr.ht 是 100%的自由软件,大部分在 GNU Affero General Public license (又称 AGPL 3.0 )下许可。我们结合社区的变化,共同建立最好的服务。你的付款提供了运营成本,保持有人在线维护网站,开发新功能,并提供可靠的服务。我们承诺只将我们的利润投资于自由软件或自由文化的努力,事实上我们已经赞助了许多这样的项目。

    这是三种订阅套餐, 没有任何区别 (😄, 量力而行。

    如果你是学生(打钱,不想付费或者其他原因,可以发邮件联系,他们会慷慨地给你免除费用。

    如果有兴趣了解更多,这是他们的官网

    更详细的中文介绍

    如果是想自己搭建,欢迎体验下我写的小项目,可以让 source 简单地运行在 docker 中。

    项目地址:

    14 条回复    2022-08-20 17:59:09 +08:00
    andyJado
        1
    andyJado  
       2022-08-16 09:40:34 +08:00
    在迁了
    ulyc
        2
    ulyc  
    OP
       2022-08-16 09:46:19 +08:00
    @andyJado 老哥 行动力 Max
    SmiteChow
        3
    SmiteChow  
       2022-08-16 09:50:49 +08:00
    欣赏不了这种 UI
    kidlj
        4
    kidlj  
       2022-08-16 10:39:41 +08:00   ❤️ 1
    真棒!感谢分享。
    darksword21
        5
    darksword21  
       2022-08-16 10:54:46 +08:00
    在迁了
    zwpaper
        6
    zwpaper  
       2022-08-16 11:44:11 +08:00   ❤️ 1
    帮 op 加一个 sr.ht 的优势

    Emacs 社区也在考虑迁到 sr.ht
    itfanr
        7
    itfanr  
       2022-08-16 15:09:37 +08:00   ❤️ 1
    感谢分享
    itfanr
        8
    itfanr  
       2022-08-16 15:19:50 +08:00
    但是我实在无心接触一个新的平台。github 足够,有时间多学代码多好。
    ulyc
        9
    ulyc  
    OP
       2022-08-16 15:54:41 +08:00
    @itfanr 选择自己喜欢的就好 😄
    justin2018
        10
    justin2018  
       2022-08-16 16:45:20 +08:00
    UI 太朴素了 😁
    ulyc
        11
    ulyc  
    OP
       2022-08-16 16:54:48 +08:00
    @justin2018 简洁之美~
    JackieMe
        12
    JackieMe  
       2022-08-17 16:53:01 +08:00 via Android
    这种平台你们都不考虑服务稳定性的么,他们还在 alpha 阶段,然后我都不能保证他明年还在,或者 3 年 5 年后还在。托管平台么,我可不想隔三差五就迁移一次。
    ulyc
        13
    ulyc  
    OP
       2022-08-17 20:22:00 +08:00   ❤️ 1
    @JackieMe 如果一家以盈利为最终目的的公司,不盈利的时候随时砍掉不奇怪。
    这公司的目的可不是盈利,创始人有闲有钱有技术,他们的目的是让 FOSS 变得更好,无论是否有利可图。
    况且现在 sourcehut 每年都在稳定盈利中。

    还有这平台其实并不很小众,它的死忠粉可不少。 软件自由保护组织( Software Freedom Conservancy ) 最近「 Give up Github 」的宣言里只推荐了两个替代性的平台,其中一个就是 sourcehut 。

    NLnet 基金在今年开始资助 sourcehut 。( NLNet 先去同等级的资助项目包括 Tor 、WireGuard 、postmarketOS 、Jitsi )
    Emacs 也在尝试迁过去。

    我并不认为自己的项目比他们的更重要😄

    而且 sourcehut 代码完全开源的,完全可以自托管的啊
    haoliang
        14
    haoliang  
       2022-08-20 17:59:09 +08:00   ❤️ 1
    neovim 也有尝试迁移 CI 到 sr.ht 的 PR ,iirc
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   989 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 21:11 · PVG 05:11 · LAX 13:11 · JFK 16:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.