是否有任何合理的方法可以将 CRAN 包与同名的 github 包一起安装?
具体来说,我在github 页面的分支中的geom_sf()
geom之后: https ://github.com/tidyverse/ggplot2/tree/sf 。所以我可以像这样安装 sf 分支:sf
ggplot2
devtools::install_github("tidyverse/ggplot2", ref = "sf")
像这样的 CRAN 版本:
install.packages("ggplot2")
但是,该sf
分支ggplot2
在其他有用的功能方面落后,所以我不想完全恢复。所以我想知道这里最好的方法是什么。我可以同时安装两者但以某种方式调用一个包 ggplot2_sf 吗?基本上我希望能够将 geom_sf 与当前 CRAN 上的 ggplot2 的所有功能一起使用。
我曾认为也许最好的解决方案是分叉 ggplot2 存储库,合并 master 和 sf 分支,然后安装它。但我想知道是否有更好的方法?
更新
所以事实证明,您需要使用 withr 指定 lib 目录(参见此处)。我试过这个:
withr::with_libpaths(new = "./R/gh_libs/", install_github("tidyverse/ggplot2", ref = "sf"))
这返回了这个错误:
curl::curl_fetch_disk(url, x$path, handle = handle) 中
的错误:SSL CA 证书有问题(路径?访问权限?)
所以我可以像这样将 SSL 认证设置为零:
httr::set_config( httr::config( ssl_verifypeer = 0L ) )
withr::with_libpaths(new = "./R/gh_libs/", install_github("tidyverse/ggplot2", ref = "sf"))
但是,这不会将其安装在我之后的目录中:
从 URL https://api.github.com/repos/tidyverse/ggplot2/zipball/sf下载 GitHub 存储库 tidyverse/ggplot2@sf 安装 ggplot2 安装 1 个包: utils::install.packages 中的摘要警告(pkgs,repos = repos , type = type, dependencies = dependencies, : 'lib = "C:/Program Files/R/R-3.3.3/library"' is not writable in utils::install.packages(pkgs, repos = repos, type = 类型,依赖项 = 依赖项,:无法安装软件包
关于我可能做错的任何其他想法?