Ubuntu/Linux/QNX · 2013/07/02

Gitolite无法新加用户的解决方案

上次写到在Ubuntu上通过gitolite创建git服务器(这里),刚开始没遇到啥问题,后来来了一些新员工,发现后面新加的key都用不了!

折腾了许久,Google了很多文章后,终于解决了这个问题。

1. 如何查看用户是否添加成功?

用户的添加步骤是,用户自己通过ssh-keygen -t rsa 方式生成key对,然后把公钥通过username.pub发给你(管理员);你给他通过git上传到gitolite-admin\keydir文件夹中。

commit后,你可以在ubuntu上的/home/git/.gitolite/keydir中看到新添加的公钥;如果正常,通过git用户登陆,可以在/home/git/.ssh/authorized_keys看到鉴权通过的用户。

如果失败,就是这个文件里没有你新加的用户!

2.为啥失败呢?

这是gitolite的一个已知的bug!看到很多文章写了不同的解决方案,不过这边就写一个我这边验证可行的方案,升级gitolite。

升级的步骤和安装一样,先clone代码,然后install&setup。另外需要注意的是,用puttygen生成的key对gitolite不认,必须使用ssh-keygen去生成key对。