我有这个设置,我的电脑和两台虚拟机:
ssh-keygen -t rsa
并将其名称更改为与我的用户名相同,我们称之为user_pc
。在这里,我能够克隆gitolite-admin
repo。user_vm1_git
下安装gitolite的地方。我从({1}}复制(使用scp)到user_pc
user_vm1_git
。user_pc.pub
的任何其他用户。我还生成了一个ssh密钥,复制到user_vm2_random
并将其添加到user_pc
。到目前为止。在gitolite-admin/keys
充当 admin 的情况下,我可以为"其他用户"创建新的存储库,克隆和推送没有任何问题。使用user_pc
我也可以按预期克隆新存储库,但不能克隆user_vm2_random
。
现在的事情是,我希望在虚拟机1 (充当服务器)中有另一个用户,称为gitolite-admin
,因为我想在那里安装redmine并使用redmine -git-hosting插件管理gitolite。为此,我在名为redmine(user_vm1_redmine
)的虚拟机1 上创建了一个新用户。然后我切换到该用户(sudo adduser user_vm1_redmine
),生成一个ssh密钥,然后通过scp将其复制到我的计算机su - user_vm1_redmine
中的管理员。然后,使用该密钥,我可以将其添加到gitolite-admin / keys并推送更改。我可以在安装了gitolite的用户user_pc
下的虚拟机1 中检查,user_vm1_git
新密钥/home/user_vm1_git/.gitolite/keydir
就在那里。现在,因为我希望user_vm1_redmine.pub
也是gitolite的管理员,我更改了计算机中的文件user_vm1_redmine
(gitolite-admin/conf/gitolite.conf
)并推送更改。现在,问题。当我想使用user_pc
克隆虚拟机1 中的存储库gitolite-admin
时,它会要求输入密码。我有这个问题仅与安装了gitolite的同一台机器上的另一个用户(在localhost上)。如果它是另一个系统,它工作正常。对于安装了gitolite的同一台计算机中的不同用户,有什么特别的改变吗?
除了安装redmine之外,我想让用户在安装它的同一台计算机上管理git服务器。安装了gitolite的相同用户是否可以将其设为admin?
我更改了gitolite配置,因此它接受了挂钩键,对gitolite.rc进行了更改,所以它看起来像这样:user_vm1_redmine
和GIT_CONFIG_KEYS => '.*',
。我还使用
LOCAL_CODE => "$ENV{HOME}/local"
/etc/sudoers.d/redmine
Ahd更改了权限:Defaults:redmine ~requiretty
redmine ALL=(git_ NOPASSWD:ALL
。
感谢您的帮助。