2023-11-05 05:00:00

Git服务器像GitHub?

我是一个长期的Subversion用户,将尝试Git。我读过一些关于它的文章,了解分布式的本质——我能看到很多好处。

然而,我确实喜欢中央服务器的想法,它可以承担备份、记录系统等的角色,同时仍然使用Git进行本地分支和共享。我不是在做一个开源项目,所以我不能使用Github(不付费),所以我的问题是:运行本地git服务器的最佳实践方式是什么?

我知道这可能违反了标准的Git使用模式,但它对我的项目很有用。然而,任何我可能忽略的担忧都是受欢迎的。

谢谢!


当前回答

为了补充Chris所说的,您可以使用gitosis (http://eagain.net/gitweb/?p=gitosis.git)来控制谁可以实际访问回购。

根据您的使用情况,还可以使用钩子(在.git/hooks文件夹中),这样当您从本地计算机进行推送时,您的代码将自动拉入服务器的文件系统。这里有一个流行的脚本:http://utsl.gen.nz/git/post-update。不过,并不是所有情况下都需要这样做。

其他回答

如果你只是想把你的存储库放在一个中心位置,使用Git这样的分布式版本控制非常容易: 你可以把你的中央存储库放在中央机器上的某个共享文件夹中,每个人都可以从那里克隆它。

如果您想在本地服务器上建立一个“真正的”网站,我知道Git托管网站http://repo.or.cz。 它的功能似乎比GitHub少,但与GitHub不同的是,你可以获得源代码并将其托管在自己的本地服务器上。

免责声明:我只读过关于回购。cz,我自己从来没有试过!

你甚至可以在你的本地服务器上安装GitHub(但不是免费的):

https://enterprise.github.com/

与此同时,Mercurial托管网站Bitbucket也开始提供Git存储库。

所以如果你不需要本地服务器,只需要一些中心的地方,你可以免费托管私有Git存储库,我认为Bitbucket是最好的选择。

免费地,您可以获得无限的私有和公共Git和Mercurial存储库。 唯一的限制是在免费计划中,不能超过5个用户访问您的私有存储库(如果要更多,您必须付费)。 查看https://bitbucket.org/plans获取更多信息!

如果你想要拉请求,有RhodeCode和GitLab的开源项目和付费的Stash

Gitorious是一个开源的git web界面,你可以在自己的服务器上运行,就像github一样:

http://getgitorious.com/

更新:

http://gitlab.org/现在也是另一个选择。

更新2:

Gitorious现在加入了GitLab