所以我一直试图将使用坚固的fetch和clone repo的功能结合起来。我试过以下
repo.fetch("origin")
和这个
remote = Rugged::Remote.lookup(repo, remote_name)
remote.connect(:fetch)
也是这个
subject.clone(url, local_path)
所有这些都返回错误
Rugged::NetworkError:
This transport isn't implemented. Sorry
现在,通常情况下,我会接受错误,因为它尚未实施。但是,在看过像this,和this.这样的问题时,我质疑该错误的准确性。
我确保libgit2和libssh2都安装在运行此代码的本地系统上。
我还查看了源代码,试图找到生成此错误的位置,但无法找到它。对我来说,这没有任何意义,因为错误并没有特别指出它失败的地方。
我的问题是,这是预期的行为吗?根据我发现的问题和答案,我认为不是这样。在哪种情况下,有人知道这是否是一个常见问题?任何帮助表示赞赏。
答案 0 :(得分:0)
所以我发现了这个问题,因为libgit2和libssh2在使用bundler安装时没有正确链接。 this answer指出了这个大方向。
运行以下命令
bundle install --path bundle/
冲突得到解决。