修改gitolite存储库URL

时间:2012-10-03 00:42:35

标签: gitolite

我安装了gitolite。我能够很好地管理它。我添加了一些新的repos和一些pub键。安装为“git@domain.com”,并为用户repo.git添加了回购。

是否必须git@domain.com:repo.git才能访问,或者是否有办法在网址中指明用户?
可能是user@domain.com:repo.gitgit.domain.com/user/repo.git之类的东西?

1 个答案:

答案 0 :(得分:1)

不,它必须是git@domain.com因为用户总是相同的:您用来在服务器上安装和管理gitolite的git帐户。

实际用户是从您拨打ssh电话时使用的公钥推断出来的 如果您使用user.pub文件注册该密钥,该文件表示以用户登录后命名的公共密钥 ,那么gitolite将能够识别您的身份。

有关详情,请参阅“how gitolite uses ssh”。

  

如果你查看authorized_keys文件,你会看到这样的条目(当然我切断了它们的结尾;它们很长):

command="[path]/gitolite-shell sitaram",[more options] ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA18S2t...
command="[path]/gitolite-shell usertwo",[more options] ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEArXtCT...
  

首先,它会找出此文件中的哪些公钥与传入的登录相匹配   一旦找到匹配,它将运行该行给出的命令;例如,如果我登录,它将运行[path]/gitolite-shell sitaram   所以首先要注意的是这样的用户没有“shell访问”,这很好!

     

gitolite-shell获得控制权时,会查看第一个参数(“sitaram”,“usertwo”等),以确定您是谁。然后,它会查看SSH_ORIGINAL_COMMAND变量,以找出您要访问的存储库,以及您是在阅读还是写作。

     

现在它有一个用户,存储库和请求的访问权限(读/写),gitolite查看其配置文件,并允许或拒绝请求。