【发布时间】:2019-10-21 20:51:30
【问题描述】:
我正在开发一个包,它依赖于我仍在 github 上的另一个包。我正在使用 travis-ci 来测试这个包。我在 .travis.yml 文件中添加了以下内容,以从 dev 分支安装 dmdScheme 包:
language: r
r_github_packages: r-lib/remotes#340
r_github_packages: rkrug/dmdScheme#dev
但我在travis 收到以下错误
Installing R packages from GitHub: rkrug/dmdScheme#dev
0.19s$ Rscript -e 'remotes::install_github(c("rkrug/dmdScheme#dev"))'
Error in parse_repo_spec(repo) :
Invalid git repo specification: 'rkrug/dmdScheme#dev'
Calls: <Anonymous> -> lapply -> FUN -> parse_git_repo -> parse_repo_spec
Execution halted
The command "Rscript -e 'remotes::install_github(c("rkrug/dmdScheme#dev"))'" failed and exited with 1 during .
远程包已安装。
我的问题:
在命令r_github_packages中指定要使用的分支(或一般ref)的正确语法是什么?
【问题讨论】:
-
您是否尝试过使用
@而不是#? -
我的另一个建议是在您的
DESCRIPTION而不是.travis.yml中指定这一点 -
感谢
@- 将在一分钟内试用。关于DESCRIPTION:我已经有一个drat repo,我会在master分支中发布时将它添加到DESCRIPTION- 好吧,我实际上也可以为dev分支执行此操作。你的意思是Remotes: rkrug/dmdScheme@dev- 对吗? -
是的,我就是这么想的。我不知道它是否会起作用,我只知道这是指定 GitHub 依赖项的另一种方式。
-
@完美运行。谢谢。不过,我想将它保留在.travis.yml中,让用户决定要安装哪个版本(我将在矩阵中针对dmdScheme的master和dev进行测试——让我们看看它是否有效。跨度>
标签: r github package branch travis-ci