devtools 相当于 RStudio Build 面板按钮

devtools equivalent of RStudio Build panel buttons

我正在使用 RStudio 制作 R 包。我很乐意使用“构建”面板上的按钮。我有一个脚本,每次 Build & ReloadClean and Rebuild 时我都想 运行。我想编写一个 运行 脚本的函数,然后执行与其中一个按钮关联的 devtools 命令,但我无法找到这些按钮和 devtools 命令之间对应关系的文档.按钮如下:

对于该列表中的每一项,我 运行 的 devtools R 代码会导致完全相同的行为?

在 RStudio 中,您可以在“项目选项”>“构建工具”中选中 "Use devtools package functions if available",您可以看到将使用哪些 devtools 函数。如果查看构建控制台窗格,则可以查看 RStudio 运行的内容。使用 devtools 的一般情况:

  • 构建并重新加载

    • devtools::build()
    • devtools::reload() 可能是一个选项,但 Rstudio 使用 R CMD INSTALL --no-multiarch --with-keep.source <pkgNameGoesHere>
  • 检查

    • devtools::check()
  • 全部加载
    • devtools::load_all(".")
  • 清理并重建
    • R CMD INSTALL --preclean --no-multiarch --with-keep.source <pkgNameGoesHere>
  • 测试包
    • devtools::test()
  • 检查包裹
    • devtools::check()(与检查按钮相同)
  • 构建源码包
    • devtools::build()
  • 构建二进制包
    • devtools::build(binary = TRUE, args = c('--preclean'))

更多信息请参见 devtools repo 中的自述文件。

要在 R 中从 RStudio 执行清理和重建操作,您可以使用 R 函数 system() 正在执行

system("R CMD INSTALL 
--preclean 
--no-multiarch 
--with-keep.source <your_package_name>")

从您的 R 会话中执行 Shell 命令。请注意,如果您 运行 在包项目之外(例如来自另一个项目或会话)

,则必须参考包的正确位置