如何使用remotes::install_gitlab从指定分支安装R包?
解决从GitLab指定分支安装R包的问题
你完全没错,remotes::install_gitlab()确实支持直接从指定分支安装包,只是你之前用错了参数——它和install_github()一样,有专门的ref参数用来指定分支、标签或者提交哈希值,而不是用subdir。
正确的安装命令
直接用ref参数指定spline分支即可,不需要把网页上的分支路径填到subdir里:
remotes::install_gitlab("agebhard/interp", ref = "spline", host = "https://gitlab.aau.at")
为什么之前的命令报错?
subdir参数的作用是指定包代码在仓库中的子目录(比如有些仓库会把包代码放在pkg或者R-package这类子文件夹里),而你把网页上的分支路径-/tree/spline填进去后,函数会尝试去这个错误的路径下找DESCRIPTION文件,自然就出现了无法打开URL的错误。
额外提示
如果你的目标包代码确实不在仓库根目录,而是在某个子文件夹里,还可以同时使用ref和subdir参数,比如:
remotes::install_gitlab("agebhard/interp", ref = "spline", subdir = "path/to/package", host = "https://gitlab.aau.at")
内容的提问来源于stack exchange,提问作者user2554330
相关产品推荐
相关产品推荐

