在#connect上获取Rugged :: NetworkError

时间:2014-03-07 16:41:45

标签: git libgit2 rugged

我尝试实现fetch并引发了这个异常:

  

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

我能够检索远程实例:

remote = Rugged::Remote.lookup(repo, remote_name)
remote.connect(:fetch)
# => Rugged::NetworkError: This transport isn't implemented. Sorry

我按照自述文件中的指示检索了development版本的gem:

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

如何获得对connect方法的访问权限?

2 个答案:

答案 0 :(得分:1)

libgit2使用openssl表示HTTPS,libssh2表示ssh。您需要为它们开发包,以便构建嵌入式libgit2并支持这些传输。

答案 1 :(得分:0)

为了跟进这一点,您需要安装以下内容:

openssl libssh2 libssl-dev pkg-config

然后您需要重新安装libgit2(rebuild),因为原始共享库不知道您已安装新软件包。有关安装,请参阅http://www.pygit2.org/install.html