我只是使用gitosis设置了一个git存储库。我无法弄清楚的是如何添加其他用户。我发现的所有教程都只是说“收集他们的公共SSH密钥”。
我首先尝试在我的机器上创建本地(而不是服务器),但我认为这是错误的方法。
现在我尝试在Windows机器上使用PuTTy keygen创建公钥,保存密钥并将其放入gitosis-admin目录下的keydir。
我已经尝试了git clone git@cn-linuxdev.****.***:tungsten.git
和git clone tor@cn-linuxdev.****.***:tungsten.git
,其中tor是keydir中文件的名称。
auth.log中生成的错误是Failed password for git from 192.168.0.158 port 63305 ssh2
从Windows客户端我也尝试了在设置sudo -H -u git gitosis-init < /tmp/id_rsa.pub
期间设置的密码
这个ssh密钥来自我的本地计算机。这个密码可以从那里工作,但不是Windows客户端。
我不太明白ssh-keys是如何工作的,但我猜它们会被绑定到它们生成的计算机上。
那么有没有人设法与其他用户和Windows用户建立gitosis?你是怎么让它上班的?
答案 0 :(得分:3)
每个用户都应该生成他/她自己的一对公钥和私钥ssh密钥。
见GitHub help page
然后,他们需要为您 to call 向您发送 gitosis-init
with $HOME/.ssh/id_rsa.pub
的内容,以便适当地编辑配置文件并检入(并推送) keydir/..
中的键
(谢谢,ebneter,更正)
例如,在此mantisbt gitosis management page中:
$ cat > keydir/jsmith.pub
...
^D
$ git add gitosis.conf keydir/jsmith.pub
$ git commit -m "Added 'myplugin' repository and 'jsmith' user."
$ git pull --rebase # make sure we have the latest updates from the server
$ git push
注意:所有用户端操作(如ssh-keygen -t rsa -C "my@email.com"
或$HOME/.ssh/id_rsa.pub
)都需要在Git bash环境中完成或评估,而不是在Dos shell中。