gpt4 book ai didi

r - 将 renv 用于私有(private) GitLab 包

转载 作者:行者123 更新时间:2023-12-04 02:33:47 24 4
gpt4 key购买 nike

我有一个本地 GitLab 帐户,其中包含可以通过以下方式安装的 R 包:

devtools::install_git( 
url = "http://my-gitlab/my-projects/package",
credentials = git2r::cred_user_pass("user", "pass")
)
当我运行 renv::init()包来源未知。 getting started article确实提供了有关如何设置函数以处理私有(private)存储库的详细信息,但在使用 devtools 时我无法为 GitLab 弄清楚和 git2r::cred_user_pass .我可以存储 GIT_USERGIT_PASSWORD.Renviron文件,但我不确定如何强制 init对用户的功能 devtools::install_git有了这些凭据。我确实尝试过,但后来出现错误:
fatal: could not read Username for 'http://my-gitlab': No such device or address
他们提供的所有示例选项都使用 GitLab token 进行身份验证:
# use a named list directly
options(renv.auth = list(
MyPackage = list(GITHUB_PAT = "<pat>")
))
也许有更好的方法从本地 GitLab 存储库安装,它可以更好地与 renv 一起使用?

最佳答案

对于其他有同样问题的人,这对我有用(见 here ):

  • 在 GITLAB 中创建 PAT,确保将 SCOPE 设置为 api .注意:我不确定这一定是 'api' 我没有检查所有选项,但它对我有用
  • 使用 Sys.setenv(GITLAB_PAT = <...>) 将 PAT 设置为环境变量
  • 使用 options(renv.config.gitlab.host = "http://my-gitlab-server") 将 gitlab 主机服务器设置为选项.注意:我必须包含“http://”才能使其正常工作。
  • 运行renv::install("gitlab::project/package")
  • 这对我不起作用:renv::install("gitlab@my-gitlab-server::project/package")
  • 关于r - 将 renv 用于私有(private) GitLab 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62772833/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com