从 Git 迁到 Fossil:一个人自托管版本控制的理由
来源: lucio.albenga.es — 2025-11-12
概述
作者长期用过 RCS、CVS、SVN、Mercurial、Bazaar 与 Git,这次因为 Git 邮件列表上正在推动把 Rust 变成强制语言(他明确不喜欢这个方向),开始认真寻找 Git 的替代品,最后选了自己写、体积小、资源占用低的 Fossil。他喜欢 Fossil 的理由很具体:没有 staging area 这类对个人项目多余的功能,命令行更自然;自带 web 服务器与 web 界面,版本视图、wiki、ticket 一应俱全,不必像 Git 那样再叠一个 GitLab、Gitea 或 Forgejo;提交信息用用户名而不是邮箱,公开仓库不用担心垃圾邮件;与 Git 可以双向同步,需要时能迁回(Fossil 与 SQLite 项目正是用它维护 GitHub 镜像)。文中给出了安装、初始化到本地浏览器的完整步骤,最后用一条 fossil ui 说明不开服务器也能看网页界面。
核心要点
- 迁移动因之一:Git 邮件列表上有人提出让 Rust 成为强制语言,他不愿被裹挟。
- 选 Fossil 的关键是「小而省」:C 写成、依赖少、资源占用低。
- 相比 Git 少了 staging area 这类过度功能,对个人项目来说日常命令更直观。
- Fossil 自带 web 服务器与 web 界面(版本视图、wiki、ticket),不必额外部署 GitLab/Gitea/Forgejo。
- 提交信息用用户名而非邮箱,公开仓库不必专门准备一个邮箱来挡垃圾邮件。
- 与 Git 互操作:支持双向同步,需要时可迁回,Fossil 与 SQLite 项目就是这样维护 GitHub 镜像的。
金句
Fossil 在我看来近乎完美地混合了两者——既有 Subversion 那样的集中式,又有 Git 那样的分布式。
👍 0
👎 0
返回 Lobsters 首页