一直以来,GitHub 是托管开源项目的最佳选择,但是微软收购 GitHub 后,情况可能会发生变化。
微软对开源社区的态度一直很微妙,这不是什么秘密;反过来,一些开源界人士也秉持着“反微软”的态度。微软掌控下的 GitHub 将如何发展,目前还难下定论,不过肯定会有一些开源人士会“择良木而栖”,去往别处。
这篇文章将推荐一些 GitHub 的替代品,可以考虑将代码托管在这些平台上。
这里列出的替代方案在一定程度上提供了免费的服务,因为免费也是 GitHub 的亮点之一。
GitLab
GitLab 是替代 GitHub 的首选,它在使用体验方面最接近 GitHub。最重要的是,GitLab 是一款开源软件,可以下载并安装在自己的服务器上。
很多开源项目已经在使用 GitLab,比如 GNOME 和 GIMP。
微软宣布收购 GitHub 后,GitLab 上从GitHub 处迁移过来的代码库数量激增。GitLab 也提供了一种从 GitHub 迁移到 GitHub 的简单方法。
迁移指导:https://docs.gitlab.com/ee/user/project/import/github.html
用户不一定要在自己的服务器上部署 GitLab,GitLab 也提供了托管服务,但它不是完全免费的。以下是 GitLab 的定价细节。
GitLab 的定价也并不便宜,所以可以考虑使用 Digital Ocean 这样的云服务,它支持一键安装 GitLab。用户可以选择运行自己的 GitLab 实例,每月只要 5 美元。Digital Ocean 还向新用户免费赠送 10 美元。这里有个教程 https://www.digitalocean.com/community/tutorials/how-to-use-the-gitlab-one-click-install-image-to-manage-git-repositories,可以在几分钟内将 GitLab 部署到 Digital Ocean 服务器上。
BitBucket
BitBucket 是由 Atlassian 推出的版本控制仓库托管服务,它与其他 Atlassian 项目管理工具(如 Jira、HipChat 和 Confluence)紧密集成,是大型企业的首选。
当然,不一定要大企业才能使用 BitBucket。BitBucket 提供了多种选择,如果项目团队成员不超过五个人,就可以免费使用 BitBucket。
超过五名成员的开源项目仍然可以免费使用 BitBucket,前提是要申请社区许可,并遵守 Atlassian 的开源指南。
在微软宣布收购 GitHub 后,从 GitHub 迁移到 BitBucket 的代码库数量也增加了不少。BitBucket 可以跟 Jira 集成,并有集成式 CI/CD,支持 Mercurial,是一个不错的选择。
SourceForge
SourceForge 是 GitHub 替代品当中相对比较重要的一个。
SourceForge 一直在开源项目中广受欢迎,很多 Linux 发行版和项目通过 SourceForge 提供下载。
后来,Source Forge 受到了来自 GitHub 的冲击。不过,在 Logan Abbott 的领导下,SourceForge 重新设计了界面,来找回在开源代码托管领域失去的地位。
SourceForge 为 GitHub 用户提供了将整个 GitHub 仓库或选定的仓库导入到现有项目中的工具。
迁移指导:https://sourceforge.net/p/forge/documentation/GitHub%20Importer/
Launchpad
Launchpad 是来自 Ubuntu 母公司 Canonical 的软件协作平台。Canonical 和 Ubuntu 项目中已经在广泛地使用 Launchpad,它为 Ubuntu 相关项目提供了 PPA 和 bug 跟踪。
尽管 Launchpad 已经出现多年,但它并没有像其他 GitHub 替代品那样受欢迎,因为它通常被认为是“Ubuntu 家族”的东西。
话虽如此,Launchpad 对 Git 有很好的支持。用户可以在 Launchpad 上托管或导入 Git 仓库,而且完全免费。
如果可以忽略过时的界面和稍微不同于 GitHub 的工作流,Launchpad 将是一个不错的选择。