I tried to implement fetch and this exception was raised:

Rugged::NetworkError: This transport isn't implemented. Sorry

I am able to retrieve a remote instance:

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

I retrieved the development version of the gem as directed in the README:

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

How do I gain access to the connect method?

有帮助吗?

解决方案

libgit2 uses openssl for HTTPS and libssh2 for ssh. You need the development packages for them in order for the embedded libgit2 to build with support for those transports.

其他提示

Just to follow up on this, you need to install these:

openssl libssh2 libssl-dev pkg-config

Then you need to reinstall libgit2(rebuild), because the original shared libraries do not know that you've installed the new packages. See http://www.pygit2.org/install.html for installing.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top