Getting Rugged::NetworkError на #connect
Я попытался реализовать выборку, и это исключение было поднято:
Rugged:: NetworkError: Этот транспорт не реализован. сожалею
Я могу получить удаленный экземпляр:
remote = Rugged::Remote.lookup(repo, remote_name)
remote.connect(:fetch)
# => Rugged::NetworkError: This transport isn't implemented. Sorry
Я получил development
версия драгоценного камня, как указано в README:
gem 'rugged', git: 'git://github.com/libgit2/rugged.git', branch: 'development', submodules: true
Как получить доступ к методу подключения?
2 ответа
Решение
libgit2 использует openssl для HTTPS и libssh2 для ssh. Вам нужны пакеты разработки для них, чтобы встроенный libgit2 собирался с поддержкой этих транспортов.
Просто чтобы продолжить, вам нужно установить эти:
openssl libssh2 libssl-dev pkg-config
Затем вам нужно переустановить libgit2(rebuild), потому что оригинальные разделяемые библиотеки не знают, что вы установили новые пакеты. См. http://www.pygit2.org/install.html для установки.