2016-09-23 153 views
11

我正在GitHub上开发两个软件包,我试图用devtools::install_github()命令安装它们。通过devtools安装r软件包的问题install_github

由于仓库是私人的,我创建了一个auth_token我的账户(据我看到的,有没有办法为一个单一的回购做到这一点?)

devtools::install_github("mariodejung/rMQanalysis", 
         auth_token="6cd2dbe8bd1f062842b90afXXXXXXXXXXXXXXXXX", 
         ref="develop", 
         dependencies=TRUE) 
devtools::install_github("mariodejung/cfpscripts", 
         auth_token="6cd2dbe8bd1f062842b90afXXXXXXXXXXXXXXXXX", 
         ref="develop") 

第一包的安装按预期工作,第二个开始安装,但因错误而停止,并由于任何原因它提到了第一个已安装的软件包。查看最后评论中的错误。 我不知道为什么会发生这种情况,以及如何解决它。

我再次在下面添加了错误消息,因为我已经改变了一些东西。

对不起,要更改auth_token,但该脚本现在应该保持私密。

我也检查了只用一个命令安装两个软件包,但它导致相同的错误信息。根据评论的建议,我还在我的环境中添加了GITHUB_PAT变量,以便不公开使用身份验证令牌。

devtools::install_github(c("mariodejung/rMQanalysis","mariodejung/cfpscripts"), 
         ref="develop", 
         dependencies=TRUE) 

此命令现在已经成功地安装rMQanalysis包和失败,同样的错误信息,而安装cfpscripts。仍然不知道如何找出问题所在。它适用于其他机器。还安装了所有依赖项。

devtools::install_github(c("mariodejung/rMQanalysis","mariodejung/cfpscripts"), ref='develop', quiet=FALSE) 
Using GitHub PAT from envvar GITHUB_PAT 
Downloading GitHub repo mariodejung/[email protected] 
from URL https://api.github.com/repos/mariodejung/rMQanalysis/zipball/develop 
Installing rMQanalysis 
"C:/PROGRA~1/R/R-32~1.5/bin/x64/R" --no-site-file --no-environ --no-save --no-restore --quiet CMD INSTALL \ 
    "C:/Users/cfproteomics/AppData/Local/Temp/RtmpktvmUK/devtools43850da641a/mariodejung-rMQanalysis-0e38dd3463ea830b19f0afa2ade6f2e14db93041" \ 
    --library="C:/Users/cfproteomics/Documents/R/win-library/3.2" --install-tests 

* installing *source* package 'rMQanalysis' ... 
** R 
** data 
*** moving datasets to lazyload DB 
** inst 
** tests 
** preparing package for lazy loading 
** help 
No man pages found in package 'rMQanalysis' 
*** installing help indices 
** building package indices 
** installing vignettes 
** testing if installed package can be loaded 
*** arch - i386 
*** arch - x64 
* DONE (rMQanalysis) 
Downloading GitHub repo mariodejung/[email protected] 
from URL https://api.github.com/repos/mariodejung/cfpscripts/zipball/develop 
Installing cfpscripts 
Downloading GitHub repo mariodejung/[email protected] 
from URL https://api.github.com/repos/mariodejung/rMQanalysis/zipball/develop 
Error in stop(github_error(request)) : Not Found (404) 

我也用traceback()功能,但它并没有给更多的见解......

15: stop(github_error(request)) 
14: download_github(dest, src, auth) 
13: remote_download.github_remote(remote, quiet = quiet) 
12: remote_download(remote, quiet = quiet) 
11: FUN(X[[i]], ...) 
10: vapply(remotes, install_remote, ..., FUN.VALUE = logical(1)) 
9: install_remotes(object$remote[behind], ..., quiet = quiet) 
8: update.package_deps(pkg, ..., Ncpus = threads, quiet = quiet, 
     upgrade = upgrade) 
7: update(pkg, ..., Ncpus = threads, quiet = quiet, upgrade = upgrade) 
6: install_deps(pkg, dependencies = initial_deps, upgrade = upgrade_dependencies, 
     threads = threads, force_deps = force_deps, quiet = quiet, 
     ...) 
5: install(source, ..., quiet = quiet, metadata = metadata) 
4: FUN(X[[i]], ...) 
3: vapply(remotes, install_remote, ..., FUN.VALUE = logical(1)) 
2: install_remotes(remotes, quiet = quiet, ...) 
1: devtools::install_github(c("mariodejung/rMQanalysis", "mariodejung/cfpscripts"), 
     ref = "develop", quiet = FALSE) 

UPDATE2

整个问题似乎是在devtools 1.12.0的错误。它在1.11.1工作正常。
我想通了,我的rMQanalysis包被提及cfpscriptsImports:。如果我从Description中删除Imports:声明,则该软件包安装正常。
我还在想,为什么我不能设置dependencies=FALSE来防止install_github安装依赖包。

我填写了一份关于devtools的错误报告,但没有反应。

+4

实际上,你应该在'〜/ .Renviron'中的'GITHUB_PAT'中存储你的GitHub认证令牌(你需要重新启动R,以便将'.Renviron'中的数据加载到你的环境中)。它将在未来节省大量的打字时间,有助于防止曝光,并有助于解决此问题。 – hrbrmstr

+0

感谢提供'GITHUB_PAT'的提示,不知道。但它不能解决问题。仍然得到同样的错误,但是使用了“使用来自envvar GITHUB_PAT的GitHub PAT”的评论。 – drmariod

+0

@ drmariod我想知道这是否与“测试,如果安装的软件包可以加载”。你可以运行第一个安装脚本,然后重新启动r会话,运行第二个安装?我的假设是,第一个软件包被加载但没有干净卸载,这使得第二个软件包安装尝试安装第一个软件包失败。 – dracodoc

回答

1

您是否尝试过下载或复制存储库[因为您已付款]并从源代码安装?

install.packages("/Path/to/source", repos=NULL, type="source") 
0

有私人的GitHub存储库中的最新版本devtools与安装相关的一些错误。我已经提出了issue并作了PR。你可能会发现这个问题的原因。

+0

嗯,你的报告看起来比我的好多了,也许你的注意力是:-)我降级到'devtools 1.11.1',从那时开始工作......我正在等待devtools的新版本发布 – drmariod