我想设置一个git服务器。 我已经find了几个如何的,详细的。
有些描述可以通过Ssh访问的git-server的安装,有些则通过HTTP访问。 (其他人甚至build议工具,如gitolite)。
有没有利弊select通过SSH或HTTP? 看来,通过HTTP,文件传输速度明显较慢,但我不知道是否有其他的事情要记住。
如果有的话,build立一个git服务器最常见的方式是什么?
当你问什么是最常见的方式时,我认为最好看看你的情况,记住一个协议不会排除另一个协议 – 如果你需要的话,以后再添加更多的访问协议。
最有效和最快的是使用本地Git守护进程。 但是,提供的一些function:不encryption,不authentication。 理想的公共只读镜像的存储库。 如果您需要性能,请考虑安装最新版本,而不是随操作系统提供的版本。
最兼容的方式是HTTP。 比原生Git效率低,但差别不大。 HTTP最重要的是防火墙渗透和代理支持。 它显示为大多数网关/防火墙的常规其他HTTPstream量。
HTTPS更安全 ,但效率也不可避免。 需要相当多的configuration。 您还需要一个可信的TLS证书。
类似的安全性,但更常见的方式是使用SSH。 如果没有在命令行中指定协议,则是默认值 。 由SSH提供支持,它提供强大的encryption以及密码和密钥validation。 虽然非常规,但也可以通过这种方式进行匿名访问。
我的build议将取决于您的存储库的用例:
私人存储库和小型用户组:SSH
公共存储库,任何数量的克隆,而是一小群推特权用户:HTTP和Git(仅提取)+ SSH(+推入访问)
上面的任何一个,但有大量的推特权用户:你可能不了解Git的哲学。
某些公共或企业networking可能会阻止Git和SSHstream量。 如果您确实需要从任何地方访问您的存储库,请考虑同时使用HTTPS和SSH。
如果您的存储库是公开的,您可以使用HTTPS进行只读访问,因为在客户端很容易使用。 如果不是,你应该只使用SSH。 无论如何,您应该使用SSH进行写访问,因为它具有更好的身份validationpipe理。