3

我只是使用 gitosis 设置了一个 git 存储库。我不知道如何添加其他用户。我发现的所有教程都只说“收集他们的公共 SSH 密钥”。

首先,我尝试在我的机器(不是服务器)上本地创建,但我有点认为这是错误的方法。
现在我尝试在 Windows 机器上使用 PuTTy keygen 创建公钥,保存密钥并将其放入 gitosis-admin 目录下的 keydir 中。
我都试过了git clone git@cn-linuxdev.****.***:tungsten.gitgit clone tor@cn-linuxdev.****.***:tungsten.git其中tor是keydir中文件的名称。

auth.log 中生成的错误是 Failed password for git from 192.168.0.158 port 63305 ssh2

从 windows 客户端,我还尝试了 setup 期间设置的密码sudo -H -u git gitosis-init < /tmp/id_rsa.pub
这个 ssh 密钥来自我的本地计算机。此密码从那里有效,但不适用于 Windows 客户端。

我不太明白 ssh-keys 是如何工作的,但我猜想它们以某种方式绑定到生成它们的计算机上。

那么有没有人设法与其他用户和 Windows 用户一起设置 gitosis?你是怎么让它工作的?

4

1 回答 1

3

每个用户都应该生成他/她自己的一对公共和私人 ssh 密钥。

请参阅此GitHub 帮助页面
然后他们需要为您发送他们的$HOME/.ssh/id_rsa.pub内容打电话gitosis-init_适当地编辑配置文件并签入(并按下)键keydir/..
(感谢ebneter的更正)。
例如,在这个mantisbt gitosis 管理页面中:

$ 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"or $HOME/.ssh/id_rsa.pub)都需要在 Git bash 环境中完成或评估,而不是在 Dos shell 中。

于 2010-09-21T12:38:31.330 回答