在描述中包含 github 包作为导入

pic*_*ick 3 packages r devtools

我正在使用 devtools,我在 github 上有一些包。我想在它们之间创建依赖关系,所以当我运行install_github(...)在描述文件中列为导入的其他 github 包时,也将被安装。我可以这样做还是人们可以做其他事情?

目前,如果我向 Imports 添加一个在 CRAN 上不可用的包,我只会在运行时收到一条消息“正在跳过...包不可用:xxx” install_github

Lis*_*ine 5

您可以在描述文件中添加一个 github 依赖项,Remotes:如下所示:

Imports:
    mypackage
Remotes:
    mygithub/mypackage
Run Code Online (Sandbox Code Playgroud)

有关如何添加非 github 依赖项,请参阅https://cran.r-project.org/web/packages/devtools/vignettes/dependencies.html


Jth*_*rpe 3

尝试从 github 获取 R 的包加载器进行安装听起来就像是一个兔子洞

相反,请在包的 方法中使用类似的内容.onload()

# install these from github, not CRAN:
pkglist <- list(
    c(name='ggplus',url='guiastrennec/ggplus'),
    c(name='DT',url='rstudio/DT'))

for(pkg in pkglist)
    if(!suppressWarnings(suppressPackageStartupMessages(require(pkg['name'],
        quietly=TRUE,character.only=TRUE)))){
        devtools::install_github(pkg['url'])
        suppressPackageStartupMessages( library(pkg['name'],character.only=TRUE))
    }
Run Code Online (Sandbox Code Playgroud)

  • 您正在重新发明包管理。这可能会以泪水结束。 (6认同)