6 个托管 Git 仓库的地方

GitHub 最近的收购让一些用户开始探索这个流行代码仓库的替代方案。这里有一些可以考虑的。
403 位读者喜欢这篇文章。
Houses in a row

27707 通过 Pixabay, CC0。由 Jen Wike Huger 修改。

也许您是少数没有注意到的人之一,但在几个月前,微软收购了 GitHub。这与任何一家公司都无关。 近年来,微软已成为开源的积极支持者, 而 GitHub 几乎从一开始就一直是大量开源项目的实际代码仓库。

然而,最近(相对而言)的收购可能让您感到有些不安。 毕竟,没有什么比公司收购更能让您意识到您已将开源代码放在商业平台上了。 也许您还没有准备好立即跳槽,但至少了解您的选择会很有帮助。 让我们看看网络上有什么可用的。

选项 1:GitHub

说真的,这是一个有效的选择。 GitHub 没有不良行为的历史,而微软最近显然一直在对开源微笑。 将您的项目保留在 GitHub 上并采取观望态度并没有错。 它仍然是最大的软件开发社区网站,并且仍然拥有用于问题跟踪、代码审查、持续集成和通用代码管理的一些最佳工具。 它的基础仍然是 Git,这是每个人最喜欢的开源分布式版本控制系统。 您的代码仍然是您的代码。 如果一切正常,保持现状并没有错。

选项 2:GitLab

GitLab 可能是替代代码平台的主要竞争者。 它是完全开源的。 您可以将代码托管在 GitLab 的网站上,就像在 GitHub 上一样,但您也可以选择在自己的服务器上自行托管 GitLab 实例,并完全控制谁可以访问所有内容以及如何管理事物。 GitLab 几乎具有与 GitHub 相同的功能,有些人甚至可能会说它的持续集成和测试工具更胜一筹。 尽管 GitLab 上的开发者社区肯定比 GitHub 上的小,但仍然不容小觑。 并且您可能会在那里的人群中找到更多志同道合的开发者。

选项 3:Bitbucket

Bitbucket 已经存在多年了。 在某些方面,它可以作为 GitHub 未来的一面镜子。 Bitbucket 在八年前被一家更大的公司 (Atlassian) 收购,并且已经经历了一些转变过程。 它仍然是一个像 GitHub 这样的商业平台,但它远非一家初创公司,并且在组织上非常稳定。 Bitbucket 共享 GitHub 和 GitLab 上的大多数功能,以及一些自身的新颖功能,例如对 Mercurial 仓库的本地支持。

选项 4:SourceForge

开源代码仓库网站的鼻祖是 SourceForge。 过去,如果您有一个开源项目,SourceForge 是托管您的代码和分享您的版本的唯一场所。 它花了一点时间才迁移到 Git 进行版本控制,并且它经历了自己的一系列商业收购和重新收购事件,再加上一些不幸的为一些开源项目捆绑决策。 也就是说,SourceForge 似乎自那时以来已经恢复,并且该网站仍然是相当多的开源项目所在地。 然而,很多人仍然感到有些被烧伤,有些人不太喜欢它各种尝试平台货币化的行为,因此请务必睁大眼睛进入。

选项 5:自己动手

如果您想要完全控制项目的命运(并且除了您自己之外,没有人可以责怪),那么自己动手可能是您的最佳选择。 对于大型和小型项目来说,这都是一个不错的选择。 Git 是开源的,因此很容易自行托管。 如果您想要问题跟踪和代码审查,您可以运行 GitLab 或 Phabricator 的实例。 对于持续集成,您可以设置自己的 Jenkins 自动化服务器实例。 是的,您需要对自己的基础设施开销和相关的安全要求负责。 但是,设置起来并不难。 而且,如果您想要一种万无一失的方法来避免受制于任何其他平台的突发奇想,这就是方法。

选项 6:以上所有

这就是这一切的美妙之处:尽管这些平台中的一些平台覆盖着专有的帷幕,但它们仍然建立在可靠的开源技术之上。 不仅是开源,而且还明确设计为分布在大型网络(如互联网)上的多个节点上。 您不需要只使用一个。 您可以使用几个……或全部。 使用 GitLab 构建您自己的设置作为有保障的基地,并在 GitHub 和 Bitbucket 上设置克隆仓库,用于问题跟踪和持续集成。 将您的主代码库保留在 GitHub 上,但在 GitLab 上设置“备份”克隆,让您安心。

关键是您有选择。 我们拥有这些选择要归功于非常有用的强大项目的开源许可。 未来是光明的。

当然,我肯定会遗漏一些可用的开源选项。 请随时说出您最喜欢的选项。 您是否正在使用多个平台? 您的设置是什么? 请在评论中告知大家!

标签
User profile image.
Jason van Gumster 主要编造东西。 他写作、制作动画,偶尔也使用开源工具进行教学。 他经营一家小型独立动画工作室,撰写了《Blender For Dummies》和《GIMP Bible》,并继续在 [有时] 每周播客《开源创意播客》中吐露他的经验。 @monsterjavaguns 的冒险(和谎言)。

18 条评论

我一直是 gitlab 的快乐用户,用于我自己的项目。 它很棒,因为它允许私有仓库存在于其免费帐户中。

我一直在使用 bitbucket,因为我的公司使用它。 它的免费帐户功能非常有限。

GitHub 没有发明 git,在我看来,这只是一个很大的炒作。

我计划保留 GitHub,仅仅因为它已经深深扎根于我们作为开发人员的文化中,但我对 GitLab 非常满意,并且几年来一直将我的新项目放在那里。 如果您犹豫不决,我真的建议您尝试一下,特别是如果您想要私有仓库,因为它在 GitLab 上是免费的。

我也推荐 https://framagit.org/。 一个法国协会,致力于推广自由软件并尊重隐私。

我的看法是,最好先使用“开源” - 所以也许您自己的 Gitlab 实例(它很容易运行),或者如果您愿意,可以使用 Gitlab 的服务(尽管我会避免使用专有功能),然后如果您想要利用他们的网络效应,请在 Github 中“git mirror”您的代码。 我参与的几个组织目前正朝着这个方向发展。 我已经对我的个人 FOSS 项目做了这件事。

我认为 VSTS 是一个很好的替代方案。 它更复杂且鲜为人知,但也更强大。

我的公司使用 gitgud,我对它很满意。 令人惊讶的是,作者忽略了提及它。 有什么原因吗? 我希望看到它被包含在内。

不错的文章,Jason! 虽然我同意 github “没有不良行为的历史”,但我不会采用“观望态度”。 我一直在考虑启动自己的 git 服务器,但发现有人已经完成了所有的艰苦工作。 我一直在舒适地使用 http://gitstorage.com/ 一段时间了; 绝对是一个可行的替代方案。

哦。 这是一个看起来很方便的小设备。 不过,对于我的口味来说,有点贵。 如果我要自己动手,我个人会倾向于使用我已经拥有的东西。

回复 作者 Steve

有人用过 Pagure 吗?

对于个人使用,我设置了 Gitolite (http://gitolite.com/)。 我只需要一个轻量级的解决方案来托管各种脚本和“点”文件。 Gitolite 非常简单,允许您通过 git 本身管理仓库配置。 :-)

我希望有人能详细说明选项 5。 特别是与 Microsoft Visual Studio 一起使用。 VS 对 Git 有交互式支持,但它给人的印象是我们必须使用 GitHub。 我是否正确地认为可以使用 Git 在本地拥有源代码库? 至少对于初学者来说,这一点并不明确。

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.