cgxxv 发表于 2025-08-11 04:40
Tags:rust,self-hosted,github-alternative,gitlab-alternative,devops,ci-cd,git
大家好, 我是一名独立开发者,过去三年一直在开发一个自托管的代码托管平台 —— 类似 GitHub/GitLab,但去除了很多臃肿功能:
- 足够轻量
- 足够易用
- 更容易扩展
目前 V3 版本正在准备中,它是一次 从零开始的 Rust 1.8x 全面重构,在性能、安全性、稳定性和兼容性方面都有显著提升。
💡 为什么选择 Rust 重写?
我最初用 Go 开发了v1/v2版本。Go 的确开发速度很快,对于小型微服务来说几乎是完美的。但当项目规模变大后,Go 默认的一些内部机制会带来维护上的痛苦, 尤其跟 Rust 相比, 可能稍微不注意就会写出难以调试的代码, 我过去见过有公司代码滥用 Go 的 Context 带来的性能下降以及项目难以维护,技术债很容易积累。
Rust 则不同:规则透明、可预测,适合构建大型项目,而且后期几乎不会积累技术债。于是我花了 3 个多月时间,独立完成了全部核心模块的 Rust 重写:
- 🚀 性能:基于 tokio 异步 I/O + SeaORM 优化数据库访问
- 🛡 安全性:Rust 类型系统保障内存安全,无需担心常见的内存错误
- 🔄 兼容性:支持 GitLab/GitHub 的工作流、Pipeline、集成
- 🔌 可扩展性:多语言 API,方便集成到自定义 CI/CD
📌 当前进度
- 目前提供了v2的二进制可执行文件, 但是有一些bug全部会放在v3版本解决
- 核心功能已完成 90%
- 支持 Git 工作流与仓库托管
- 正在开发 Pipeline 存储与更多兼容特性
👤 关于我
- 自学编程, 12+ 年编码经验,长期使用 Go、Rust、云原生、前端等技术
- 非科班、非名校出身,但一直坚持写代码与学习
- 独立完成该平台的所有设计与开发工作
我做这个项目不仅是为了验证技术思路,也是在个人职业瓶颈期中想找到继续前进的动力。虽然过程很难,但 Rust 给了我信心去构建一个长期可维护的系统。
🙋 我希望在这里获得
- 熟悉 Rust 异步服务 / Git 底层的开发者反馈
- 有自托管 Git 平台经验的 DevOps 使用建议
- 对功能或交互的任何改进意见
- 志同道合的朋友
问题给大家:如果你要自托管一个 GitHub/GitLab 替代品,最希望它在哪些方面做得更好? 💬 欢迎在评论区或者Github代码仓库页留言你的想法!
Ext Link: https://github.com/gitbundle
评论区
写评论v3版本预计下个月, 到时候会提供docker镜像, API 文档, 及项目相关的其他文档
--
👇
一路火花带闪电: 什么时候可以试用? 如何试用?
什么时候可以试用? 如何试用?