'中的错误;git2r#u克隆';:尝试在R中克隆repo时不支持URL协议

'中的错误;git2r#u克隆';:尝试在R中克隆repo时不支持URL协议,r,R,我正在尝试用git2r包克隆R中的回购协议,方法是 library(git2r) repo <- path.expand("~/dev/test/repo_name") git2r::clone("git@github.com:eecs442/utils.git", repo) 有什么问题吗?假设repo是要克隆到的本地目录字符串的变量名,则应该是 库(git2r) 克隆(“https://github.com/eecs442/utils“,回购协议) 对于私有存储库,您可以 clon

我正在尝试用
git2r
包克隆R中的回购协议,方法是

library(git2r)
repo <- path.expand("~/dev/test/repo_name")
git2r::clone("git@github.com:eecs442/utils.git", repo)

有什么问题吗?

假设
repo
是要克隆到的本地目录字符串的变量名,则应该是

库(git2r)
克隆(“https://github.com/eecs442/utils“,回购协议)
对于私有存储库,您可以

clone(“https://user:password@github.com/eecs442/utils”,repo)

这很有效!当我通过ssh进行身份验证时,为什么使用https链接有效?@HarryM不知道你的意思
clone
需要完整的URL,并且相关的回购协议是公共存储库。克隆公共回购协议不需要任何身份验证。哦,我实际上为私有回购协议尝试了一个这种格式的URL(https://),它也起到了作用。我认为,当从通过SSH进行身份验证的私有repo进行克隆时,应该使用
git@github.com:repo/utils.git
,但使用
https://
链接works@HarryM通过“通过SSH对其进行身份验证”你的意思是你已经设置了一个私有SSH密钥并将其添加到你的私有repo中了吗?@HarryM我做了一个编辑,以澄清如何在私有repo中使用
clone
clone
的第一个参数需要是一个完整的URL,因此您需要
https://
Error in git2r::clone("git@github.com:eecs442/utils.git", repo) : 
  Error in 'git2r_clone': unsupported URL protocol