我面临着一个奇怪的"git ls-远程命令“问题。当我注销时,我会收到以下错误消息:
拒绝许可(公开密钥)致命:无法从远程存储库读取。 请确保您有正确的访问权限和存储库存在。
当我尝试使用buildbot而我不知道如何解决它时,它就出现了。
我设法用一个简单的脚本loop.sh来模拟这个问题:
for i in {1..100}
do
echo "$i ls-remote"
git ls-remote git+ssh://git@sourcesup.renater.fr:2222/simol.git
echo
sleep 4
done
我使用屏幕运行这个脚本。当我登录时,它会工作:
1 ls-远程3d461dd036960bb69a90a4259789bed5dc2741f7头3d461dd036960bb69a90a4259789bed5dc2741f7参/头/主 2 ls-远程3d461dd036960bb69a90a4259789bed5dc2741f7头3d461dd036960bb69a90a4259789bed5dc2741f7参/头/主 3 ls-远程3d461dd036960bb69a90a4259789bed5dc2741f7头3d461dd036960bb69a90a4259789bed5dc2741f7参/头/主
然后我就退出..。等几秒钟,再登录。git ls-远程命令失败。在本例中,我在第13次迭代之后注销了:
13 ls-远程3d461dd036960bb69a90a4259789bed5dc2741f7头3d461dd036960bb69a90a4259789bed5dc2741f7参/头/主 14 ls-远程权限被拒绝(公开密钥)。致命:无法从远程存储库读取。 请确保您有正确的访问权限和存储库存在。 15 ls-远程权限被拒绝(公开密钥)。致命:无法从远程存储库读取。 请确保您有正确的访问权限和存储库存在。
你知道如何解决这个问题吗?
非常感谢!
发布于 2015-10-02 09:45:23
非常感谢你的帮助。
我终于找到了解决问题的办法。当我与ssh连接时,我必须将ForwardAgent设置为'no‘:
ssh -o ForwardAgent=no my_buildbot_slave_machine
实际上,在我的ssh配置中,默认情况下ForwardAgent设置为"yes“。这意味着当我连接到从机而不是从机时,就会使用我自己机器的ssh键。当我断开连接时,我自己的ssh键不再可用,出现了问题。
发布于 2015-09-30 14:50:24
听起来,您不是用launchd启动buildbot实例,而是使用终端/ssh连接启动。有一个有用的页面“没有通过启动启动的buildbot进程可能不能正常工作。更糟糕的是,其中一些权限可以用于在ssh会话中启动的进程,但是一旦退出ssh会话,就会消失。”
https://stackoverflow.com/questions/32846801
复制相似问题