6 个开源和自托管的 Github 替代方案

git是一个版本控制系统。Linus Torvalds 在 2005 年创建了 Git,用于开发 Linux 内核。Git主要用于软件源代码管理。但是,它可用于跟踪任何文件集,例如 HTML 或 CSS 或以标记语言编写的教程。Git 是一个分布式版本控制系统。专用的 Git 服务器有助于管理访问控制、通过 Web 显示 Git 存储库的内容以及管理多个存储库。在 Git 中,客户端不仅仅检查文件的最新快照。它们完全镜像存储库,包括历史记录。

微软收购 Github

现在是正式的。微软宣布达成协议,收购全球领先的软件开发平台 GitHub。我认为这是对开源项目的警钟。这么多开源代码托管在 Github 上。

我们中的一些人在 IT 领域工作了很长时间。我们没有忘记大恶微软。微软是SCO 针对 Linux 诉讼的幕后推手,并被称为开源癌症。它积极遵循拥抱,扩展,熄灭的政策。微软还因滥用专利(参见Netscape和微软每年从 Android专利使用费中获得 20 亿美元的收入)和最近的 Windows 10 遥测隐私问题而闻名。名单是无穷无尽的。应该是一家谨慎信任的公司,它对开源社区和 Linux 操作系统有着悠久的滥用历史。因此,安装您的 Git 服务器是最好的策略。

Git 和 Github 替代方案的各种实现

Git 服务器有多种实现方式:

  • 专有(例如 Bitbucket
  • Git 即服务(例如 GitHub
  • 开源(例如gitoliteGerrit

让我们看看您可以在自己的服务器上托管的六个开源 Github 替代方案。

一、GitLab – 基于 Web 的 Git 存储库管理器,具有 wiki、问题跟踪功能等

GitLab 是一款免费、开源且基于 Web 的 Git 存储库管理器软件。它具有 wiki、问题跟踪和其他功能。代码最初是用 Ruby 编写的,后来用 Golang 重写了一些部分。GitLab 社区版 (CE) 是一个开源的端到端软件开发平台,具有内置的版本控制、问题跟踪、代码审查、CI/CD 等功能。在您自己的服务器、容器或云提供商上自托管 GitLab CE

经营者 GitLab BV 荷兰
服务器端免费软件 部分【GitLab Community Edition (CE)】
客户端免费软件
代码审查
错误跟踪
网络托管
wiki
私人分支
个人分支
构建系统
发布二进制文件
自托管
版本控制系统 Git
执照 麻省理工学院外籍人士
商业支持
操作系统/堆栈支持 Linux (Ubuntu/Debian/CentOS/RHEL/OpenSUSE) + Ruby、Redis、PostgreSQL/MySQL 和 Git
下载 https://gitlab.com/gitlab-org/gitlab-foss

二、Gitea – Git

它是一个无痛的自托管 Git 服务。GiteaGogs 软件的社区分支。它是用 Golang 编写并在 MIT 许可下发布的轻量级代码托管解决方案。它适用于 Windows、macOS、Linux、ARM 等。

经营者 Gitea 作者
服务器端免费软件
客户端免费软件
代码审查
错误跟踪
网络托管
wiki
私人分支
个人分支
构建系统
发布二进制文件
自托管
版本控制系统 Git
许可证 麻省理工学院
商业支持 不适用
操作系统/堆栈支持 Linux/Unix/Windows(任何可以运行 Golang 的东西)、PostgreSQL/MySQL 数据库
下载 https://gitea.io

三、GNU Savannah

GNU Savannah 是自由软件基金会的免费开源软件。它目前提供 CVS、GNU arch、Subversion、Git、Mercurial、Bazaar、邮件列表、网络托管、文件托管和错误跟踪服务。但是,该软件不适用于新用户。设置和掌握有关它的一切需要一点时间。

经营者 自由软件基金会,股份有限公司
服务器端免费软件
客户端免费软件
代码审查
错误跟踪
网络托管
wiki
私人分支
个人分支
构建系统
发布二进制文件 不适用
自托管
版本控制系统 Git、CVS、HG、SVN、BZR
执照 麻省理工学院外籍人士
商业支持
操作系统/堆栈支持 Linux (Ubuntu/Debian/CentOS/RHEL/OpenSUSE) + Ruby、Redis、PostgreSQL/MySQL 和 Git
下载 http://savannah.gnu.org/projects/administration

四、GitBucket – 用 Scala 编写的开源 GitHub

Gitbucket 是一个由 Scala 提供支持的 Git 平台,具有易于安装、高扩展性和 GitHub API 兼容性。它提供类似 GitHub 的用户界面 (UI) 和功能,例如通过 HTTP/HTTPSSSH 托管 Git 存储库、存储库查看器、问题、wiki 和拉取请求。

经营者 Gogs 作者
服务器端免费软件
客户端免费软件
代码审查 未知
错误跟踪 未知
网络托管
wiki
私人分支
个人分支 未知
构建系统
发布二进制文件
自托管
版本控制系统 Git
许可证 Apache 许可证 2.0
商业支持 未知
操作系统/堆栈支持 Java 8 (Linux/Unix/Windows)
下载 https://github.com/gitbucket/gitbucket

五、Gogs - 一个自托管 Git 服务

该项目的目标是以最简单、最快、最轻松的方式设置自托管 Git 服务。借助 Go,这可以通过跨 Go 支持的所有平台(包括 Linux、Mac OS X、WindowsARM)的独立二进制分发来完成。

经营者 Gogs 作者
服务器端免费软件
客户端免费软件
代码审查
错误跟踪
网络托管
wiki
私人分支
个人分支
构建系统
发布二进制文件
自托管
版本控制系统 Git
许可证 麻省理工学院
商业支持 不适用
操作系统/堆栈支持 Linux/Unix/Windows(任何可以运行 Golang 的东西)、MySQL/PostgreSQL/MSSQL/TiDB 数据库
下载 https://gogs.io/

六、其他 Github 替代方案

以下是适用于所有具有开源许可证的平台的 GitHub 的更多替代方案:

GitPrep

它是 Github 克隆。您可以将便携式 github 系统安装到 unix/linux 中。您可以不受限制地创建用户和存储库。这是免费软件。

Kallithea

Kallithea 是 Software Freedom Conservancy 的成员项目,是一个 GPLv3 的自由软件源代码管理系统,支持两个领先的版本控制系统 MercurialGit,并具有易于用户和管理员使用的 Web 界面。您可以在您自己的服务器和主机存储库上安装 Kallithea,用于您选择的版本控制系统。

TuleapL

Tuleap 是一个项目管理系统,用于管理应用程序生命周期、敏捷开发和设计项目、V 模型、需求管理、IT 服务管理等。Tuleap 集成了伪造系统功能,使团队能够管理软件源(使用 Subversion、GitCVS);共享技术或项目文件;跟踪错误;巩固与客户、开发商或第三方的沟通。

Phabricator

Phabricator 是一组 Web 应用程序,可帮助软件公司构建更好的软件。它是一组用于开发软件的工具。它包括用于代码审查、存储库托管、git、错误跟踪、项目管理等的应用程序。

结论

有了它,您可以在 LinuxUnix 服务器上托管六个 Github 替代方案。无需依赖云或担心 Microsoft 会查看您的代码库。如果我错过了任何其他熟知的基于 FOSSGit 服务器,请在下面的评论部分中添加。

posted @ 2021-06-24 14:37  victorlyw  阅读(7159)  评论(0编辑  收藏  举报