无法使用Rugged克隆存储库

时间:2014-05-19 16:01:26

标签: ruby rugged

将openSUSE和Ubuntu与已安装的依赖项一起使用我无法使用Rugged::Repository.clone_at方法克隆远程存储库并收到错误消息:

  

Rugged :: NetworkError:未实现此传输。遗憾

代码:

credentials = Rugged::Credentials::SshKey.new(:privatekey=>'path/to/privatekey', :publickey=>'path/to/publickey', :passphrase=>'passphrase')
Rugged::Repository.clone_at 'ssh://github.com/vmoravec/repo', 'dir/to/destination', :credentials => credentials

我的用于rails项目的Gemfile包含对github repo的引用,如下所示:

gem 'rugged', git: 'git://github.com/libgit2/rugged.git', branch: 'development', submodules: true

使用命令bundle install --path bundle/安装了gem 即使使用bundle exec rails console

,克隆也不起作用

已安装的系统包:

  • libssh2,libssh2-devel
  • openssl,libopenssl-devel,libopenssl

这里已经有类似的问题了,但解决方案不起作用(虽然我认为是MacOS):Getting Rugged::NetworkError on #connect

1 个答案:

答案 0 :(得分:1)

删除bundle/目录并使用bundle install --path bundle/重新安装gem,解决了两个系统上的问题。似乎构建系统由于某些原因无法检测/usr/lib64/libssh2.so.1传输所需的ssh依赖性。卡洛斯,感谢提示使用ldd rugged.so来检查。