为什么通过服务器端脚本使用多用户协作git存储库并不常见?

为什么通过服务器端脚本使用多用户协作git存储库并不常见?,git,apache,http,github,server-side-scripting,Git,Apache,Http,Github,Server Side Scripting,我正在寻找一个解决方案,在支持脚本的标准Web空间上托管一个私有(封闭源代码)多用户协作git存储库,然后可以通过HTTP访问该存储库,但我找不到 SSH()也存在同样的问题,它已被证明是一个有价值的工具。但是,SSH在许多Web空间上都不可用,即使可用,Web空间所有者也不希望共享其登录凭据,因为这将是一个主要的安全问题 我发现的所有脚本都以各种方式处理查看git存储库的问题,通常将存储库公开。在读写操作的开发过程中,我找不到访问存储库的脚本 我认为创建服务器端脚本应该很简单,它负责在服务器上

我正在寻找一个解决方案,在支持脚本的标准Web空间上托管一个私有(封闭源代码)多用户协作git存储库,然后可以通过HTTP访问该存储库,但我找不到

SSH()也存在同样的问题,它已被证明是一个有价值的工具。但是,SSH在许多Web空间上都不可用,即使可用,Web空间所有者也不希望共享其登录凭据,因为这将是一个主要的安全问题

我发现的所有脚本都以各种方式处理查看git存储库的问题,通常将存储库公开。在读写操作的开发过程中,我找不到访问存储库的脚本

我认为创建服务器端脚本应该很简单,它负责在服务器上强制执行对多用户git存储库的访问权限。这样,读写操作就可以在支持标准脚本的Web空间上通过HTTP访问进行处理,从而降低成本,更容易地为多用户协作建立一个基于服务器、功能齐全的git存储库

我想知道为什么这不是存储库的标准解决方案。当前对git存储库的HTTP访问没有得到优化,并且只广泛用于读访问,因为启用写访问太困难,或者现有基础架构上没有该技术(WebDAV)

这个想法有内在的问题吗,或者有一个很好的解决方案还没有写出来?

这个工具是开源的,可以用来设置你自己的托管存储库。它通过CGI为服务器上的一个或多个git存储库提供web前端

还可以设置用户身份验证/授权。例如,请参阅。

“未优化的HTTP访问”是。如果不是更好的话,使用SmartHTTP获取/推送的速度与SSH大致相同(因为不加密流量,除非将TLS用于HTTP)

推送HTTP不需要WebDAV:本机Git的HTTP后端支持所有类型的操作。身份验证由web服务器提供,并且可以以相当灵活的方式进行设置,例如,允许未经身份验证的获取,但允许经过身份验证的推送

GitoliteV3也可以放在web服务器和Git的HTTP后端之间,以充分利用这两个世界。我在Debian Squence上做了如下工作:gitolite v3通过SSH和HTTP访问


有关更多信息,请参阅。

很酷,看起来不错!我会尝试一下,但需要一些时间。