跳至主要内容
版本: 1.22.3

CRAN 包仓库

将您的用户或组织发布到类似 CRAN 的仓库中的 R 包。

需求

要使用 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")