使用Web界面设置Git服务器?

29

我们公司绝不会让像GitHub这样的第三方接近我们的源代码,有人知道如何设置类似于GitHub的SCM服务器的软件、设置向导或博客吗?它应该支持:

  • 使用Web界面创建存储库
  • 限制/管理用户访问个别存储库
  • 在线浏览存储库

如果我能够实现这个目标,我可以看到从svn/cvs到git的潜在大规模迁移。(唯一可能遇到困难的是Windows Tortoise SVN用户在使用Git Windows替代品时可能会有困难)


1
你可能想要看一下TortoiseGit http://code.google.com/p/tortoisegit/ - Wim Coenen
1
我想添加 gitlab,这是最接近 GitHub 的选择。只是为了让大家都了解情况,为这个问题添加信息。 - OnesimusUnbound
7个回答

19

有一些开源的 Git 托管软件/平台:Gitorious(用 Ruby 编写)和 InDefero(用 PHP 编写)都有免费的源代码可用。repo.or.cz 用于管理存储库的代码也是开源的,可以自由获取,名为 Girocco

还有 GitHub:FI 的“自托管”版本,但它是专有的且价格昂贵。

还有更多的Git Web界面可供选择:gitweb(使用Perl编写,与Git一起分发),cgit(使用C编写,提供缓存),git-phpGitPHPViewGit(全部使用PHP编写),Ginatra(使用Ruby编写,使用Sinatra框架)。您还可以在Git Wiki的InterfacesFrontendsAndTools页面上找到更多选项。


按照今天的标准,所有这些都已经过时了。GitList是现在非常好的选择。 - Alpha2k

15

Gitorious 似乎支持你所需要的所有功能;它的源代码可自由获取,并且可以托管在你自己的服务器上。


2
GitLab收购了Gitorious。GitLab(社区版)可从https://about.gitlab.com/免费获取。 - genepool99
2
GitLab现在很糟糕且臃肿。收购Gitorious只是为了消除可能的竞争对手。在我看来,这是GitLab的恶劣行径。 - user3791372

5

使用Gogs。这是一个使用Go语言编写的轻量级git服务器,带有Web界面。它看起来像Github克隆,但并不完全相同。它内置了缺陷跟踪器和维基,但可以在设置中替换为外部工具。建议您去试试。


4

我发现GitLab非常非常占用资源。官方建议,至少需要4GB的内存才能启动。这对于小型虚拟服务器来说不是一个可选项。

因此,我推荐使用GitList,你甚至可以在必要时自己做出贡献。


在我看来,GitList拥有最美丽和实用的界面,超越了其他所有同类产品。 - Alpha2k

4

我在一台GitLab社区版的虚拟机上进行了自我测试。

效果很好。它是免费的(但有一些限制)。


我们已经使用这个工具多年了。它的表现非常出色。 - rockstardev

4

GitHub:FI是GitHub的一款“防火墙内”版本,非常流畅。与gitorious相比,安装也容易得多。但缺点是它非常昂贵,我们考虑过但最终放弃了。

我们选择使用gitosis作为仓库管理工具,并使用GitHub浏览。唯一的缺点是没有使用Web界面创建存储库的功能,尽管我认为这可以被拼凑在一起实现。


2
我不确定你在寻找什么,但也许你并不需要一个网络界面。
你还可以创建一个Linux服务器,并在其上运行git-deamon。然后,你可以使用ssh来限制用户访问。也可以创建一个网络共享并通过这种方式限制访问。
有很多用于浏览的Web界面,但我发现没有一款可以直接在Windows上运行且能够创建/修改存储库的。很多Web界面在Windows上根本无法工作。或者我没找到足够好的...正如之前提到的InterfacesFrontendsAndTools是一个很好的开始查找的源头。

我唯一能看到的障碍就是Windows Tortise SVN用户可能会难以适应Git Windows替代品

尝试GitExtensions,它非常容易使用。

酷,以前从未见过“GitExtensions”,绝对值得一看。 - corydoras

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接