簡體   English   中英

如何從 renv.lock 更改 R 存儲庫 CRAN 以從內部/公司存儲庫獲取包?

[英]How to change R repository CRAN from renv.lock to get packages from an internal/corporate repository?

我將讓 R 項目在數據中心上運行,並且在那里工作的團隊無法訪問 Internet,因此他們必須從托管所有包的內部存儲庫(在他們的 Intranet 上)下載 R 庫。

  1. 可以更改下載庫的存儲庫嗎?
  2. 如果我向他們提供我的renv.lock文件,我們如何指向這個存儲庫?

這樣做可以解決嗎?

repos <- c(CRAN = "https://cloud.r-project.org", WORK = "https://work.example.org")
options(repos = repos)

這里

非常感謝

  1. 可以更改下載庫的存儲庫嗎?

是的,您共享的示例代碼是正確的:R session 中使用的活動 package 存儲庫是通過repos選項控制的。

  1. 如果我向他們提供我的 renv.lock 文件,我們如何指向這個存儲庫?

如果你在一個帶有自動加載器的renv項目中工作,那么當 R 啟動時, renv將自動從 lockfile 設置存儲庫。 否則,您可以調用renv::load("/path/to/project")在某個位置顯式加載項目。

我建議閱讀https://rstudio.github.io/renv/articles/renv.html了解更多詳情。

我發現自己處於設置了我的私人回購的情況,但是每當我運行renv::init()時,它都不會指向它們。 我可以通過閱讀renv文檔提出最簡單的解決方案:

  1. 在調用renv::init()之前,調用 function: Sys.getenv("RENV_CONFIG_REPOS_OVERRIDE")
  2. If it returns anything other than the URL to your private package repository then call the function: Sys.setenv("RENV_CONFIG_REPOS_OVERRIDE" = "your_private_package_repository_url")
  3. 調用 function renv::init()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM