我刚开始使用gitolite。我在远程服务器上安装了gitolite(192.168.1.109)
所以我可以git-cloning gitolite-admin.git。
git clone ssh://git@192.168.1.109/gitolite-admin.git
想要使用gitolite添加用户和回购。以下是普通的添加用户流程。
ssh-keygen -t rsa -C "test" -f test
在keydir/test.pub
然后,git add
/ git commit
/ git push
完成得很好,GitServer echo msg for git push is:
Total 5 (delta 0), reused 0 (delta 0)
remote: keydir/test.pub: Permission denied
remote: FATAL: fingerprinting failed for 'keydir/test.pub'
To ssh://git@192.168.1.109/gitolite-admin.git
5b8c75d..8c12dac master -> master
我的远程服务器是CentOS。
remote: keydir/test.pub: Permission denied
remote: FATAL: fingerprinting failed for 'keydir/test.pub'
您如何避免该错误消息?
答案 0 :(得分:0)
如果您已生成test.pub
密钥,则应在gitolite.conf中使用test
用户。
再次尝试,正如我在提到的那样:
ssh-keygen -t rsa -f "${H}/.ssh/test" -C "Gitolite Admin access (not interactive)" -q -P ""
如this blog post所示:
在gitolite代码中挖掘一下,当正则表达式在运行
ssh-keygen -l -f 'path/to/key.pub'
后无法找到有效的外观指纹时,会抛出此错误。 (有关详细信息,请参阅man ssh-keygen
。)要解决此问题,请在将配置更改推送到gitolite服务器之前,在本地运行该命令并使其生成有效指纹。我发现我的问题是我未能在密钥中包含“
ssh-rsa
”前缀。