前段时间我偶然发现了如何通过网络服务器设置git身份验证的解释。这样在客户端就不需要ssh密钥交换 对我感到羞耻,我没有给它的链接加书签,也没记得这个技术。
我只是错过了丢弃一个用户名:密码组合来访问一些一次性存储库。在对某些VM设置进行原型设计时,这是我最后一次感觉到这种需求,快照并不是理想的解决方案。
是否可以将git与基于密码的授权一起使用?
我听说的另一个用例是在大学里,这种方法在每学期为30人建立新帐户的组织开销较少。 想象一下从一群人那里收集ssh密钥,这些密钥只是生成一个自己的密钥对,甚至没有说到人们缺乏VCS甚至是什么或者用于什么的知识。
当然,对此的解决方案是仅使用SVN进行版本控制。 但是,当你有git时,是否需要使用SVN?
为了防止误解,我有自己的服务器运行一个有效的gitolite设置,并且完全可以使用客户端和服务器方式的ssh密钥。
答案 0 :(得分:2)
您可以将gitolite与任何能够提供身份验证的服务一起使用(因此排除了没有身份验证的git协议)。
我的https configuration将使用apache服务器为gitolite脚本提供的id调用gitolite。
ScriptAlias /hgit/ @H@/sbin/gitolite-shell/
SetEnv GIT_HTTP_BACKEND "@H@/usr/local/apps/git/libexec/git-core/git-http-backend"
<Location /hgit>
...
</Location>