gpt4 book ai didi

r - 在 R 中通过 git2r::clone 使用 SSH 身份验证时获取 `unsupported URL protocol`

转载 作者:行者123 更新时间:2023-12-02 13:47:21 26 4
gpt4 key购买 nike

我正在尝试在 R 中通过 git2r::clone 通过 SSH(不是 HTTPS 协议(protocol))克隆一个私有(private)仓库

git2r::clone("git@git.server.com:team_name/repo_name.git", "~/dev/")

但是,我不断得到

“git2r_clone”中的错误:不支持的 URL 协议(protocol)

有什么问题吗?

我通过 SSH 对存储库进行了身份验证,并且可以在命令行中通过 git clone url 使用相同的 URL 进行克隆。我想避免使用 https 并在 URL 中输入我的凭据。

我确保按照 this answer 安装 libssh2

最佳答案

如果您的 git2r 安装不支持 SSH,因此无法解析 git SSH URL,就会发生这种情况。

你可以通过运行来确认R 中的 libgit2_features()

如果 SSH 被禁用,您将看到

$threads
[1] TRUE

$https
[1] TRUE

$ssh
[1] FALSE

要解决此问题,请确保您已安装 libssh2libgit2。在我的例子中,我有 libssh2,但我仍然缺少 libgit2。在 Mac 上,你可以这样做

brew install libssh2brew install libgit2

之后,从源代码重新安装 git2r

install.packages("git2r", type="source", configure.vars="autobrew=yes")

library(git2r) 重新加载 git2r。现在,如果您在 R 中运行 libgit2_features(),您应该会看到 ssh TRUE

关于r - 在 R 中通过 git2r::clone 使用 SSH 身份验证时获取 `unsupported URL protocol`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60176959/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com