CRAN 包仓库
需求
要使用 CRAN 包仓库,您需要安装 R.
配置包仓库
要注册包仓库,您需要将其添加到 Rprofile.site
中,可以在系统级别、用户级别(~/.Rprofile
)或项目级别进行操作。
options("repos" = c(getOption("repos"), c(gitea="https://gitea.example.com/api/packages/{owner}/cran")))
参数 | 描述 |
---|---|
owner | 包的所有者。 |
如果您需要提供凭据,您可以将其嵌入到 URL 中(https://user:[email protected]/...
)。
发布包
要发布 R 包,请执行一个带有包内容的 HTTP PUT
操作。
源代码包
PUT https://gitea.example.com/api/packages/{owner}/cran/src
参数 | 描述 |
---|---|
owner | 包的所有者。 |
二进制包
PUT https://gitea.example.com/api/packages/{owner}/cran/bin?platform={platform}&rversion={rversion}
参数 | 描述 |
---|---|
owner | 包的所有者。 |
platform | 平台名称。 |
rversion | 二进制的 R 版本。 |
例如
curl --user your_username:your_password_or_token \
--upload-file path/to/package.zip \
https://gitea.example.com/api/packages/testuser/cran/bin?platform=windows&rversion=4.2
如果您使用的是 2FA 或 OAuth,请使用 个人访问令牌 而不是密码。
如果已经存在相同名称和版本的包,则无法发布包。您必须先删除现有的包。
服务器将返回以下 HTTP 状态代码。
HTTP 状态代码 | 含义 |
---|---|
201 已创建 | 包已发布。 |
400 错误请求 | 包无效。 |
409 冲突 | 已经存在具有相同参数组合的包文件。 |
安装包
要从包仓库安装 R 包,请执行以下命令
install.packages("{package_name}")
参数 | 描述 |
---|---|
package_name | 包名称。 |
例如
install.packages("testpackage")