Fork and Self-hosting
把公开的代码原样复制下来,拿到自己想用的服务器或电脑上直接运行的自由
简单来说
Fork and Self-hosting(复刻与自托管)指的是把别人写好的程序代码原样复制过来,这样就能不在对方公司的服务器上运行,而是放到自己想要的地方运行。可以想象一家把菜谱公开的餐厅。你可以去这家餐厅(公司服务器)点菜吃,也可以把菜谱原样拿回来,在自己家厨房(自己的服务器或电脑)里做着吃。Fork 就是把菜谱整份复制下来据为己有,自托管就是把这份复制的代码实际拿到自己管理的地方去运行。
这件事重要的原因在于控制权。哪怕餐厅关门或者改了菜单,只要你手里有菜谱,你还是能继续做这道菜吃。同样地,哪怕最初开发的公司停止服务或改变收费方式,提前 fork 并自托管的人依然可以在自己的服务器上照常使用这个程序。数据不经过别人的服务器、只留在自己电脑里,这也是一个很大的不同。
不过自托管也是有代价的。让服务器一直开着、负责维护、亲自处理更新,这些原本由公司代劳的工作,现在都要自己承担。因此通常的做法是:一边公开代码让任何人都能 fork,一边又提供省心的成品服务,把两条路都摆在用户面前。
在报道中是这样出现的
文章中会这样使用:"接连发布了专用远程电脑,以及 fork、自托管的自由"。这里容易被误解的一点是,自托管并不意味着'完全不用云服务'。实际上它想表达的是选择更多:你可以直接用公司提供的成品服务,也可以选择把代码复制下来,放到自己的服务器,甚至一台五美元的 VPS 上自己运行。
亲手试一试
可以亲手尝试的步骤如下:
- 找到你感兴趣的开源项目的仓库页面。
- 查看许可证说明,确认是否允许 fork 和自行运行。
- 把仓库复刻(fork)到自己的账户下。
- 把代码下载到自己的电脑或服务器,按照说明中的安装命令实际运行一遍。
- 对比原始服务,看看在自己服务器上运行的版本有什么不同。
