跳到内容

本文概述了如何提出对 igraph 的更改。

修复拼写错误

您可以直接使用 GitHub Web 界面修复文档中的拼写错误、语法错误或语法错误,前提是这些更改是在文件中进行的。这通常意味着您需要编辑 .R 文件中的 roxygen2 注释,而不是 .Rd 文件。您可以通过读取第一行的注释来找到生成 .Rd.R 文件。

更大的改动

如果您想进行更大的更改,最好先提交一个 issue,并确保团队中的某个人同意需要进行更改。如果您发现了一个错误,请提交一个 issue,使用最简化的 reprex 来说明该错误(如果需要,这也将帮助您编写单元测试)。有关更多建议,请参阅 tidyverse 指南,了解如何创建优秀的 issue

依赖项安装

要安装 igraph 的所有依赖项,包括开发所需的依赖项,请从 rigraph Git 存储库的根目录调用

# All Imports and Suggests dependencies
pak::pak()
# Then install packages like roxygen2 add-ons
pak::pak(dependencies = "Config/Needs/build")

Pull request 流程

  • Fork 该软件包并克隆到您的计算机上。如果您以前没有这样做过,可以使用 usethis::create_from_github("igraph/rigraph", fork = TRUE)

  • 使用 pak::pak() 安装所有开发依赖项,然后通过运行 devtools::check() 来确保软件包通过 R CMD check。如果 R CMD check 未能干净地通过,最好在继续之前寻求帮助。

  • 为您的 pull request (PR) 创建一个 Git 分支。您可以使用 usethis、GitHub Desktop 等。

  • 进行更改,提交到 git,然后创建 PR。您的 PR 的标题应简要描述更改。您的 PR 的正文应包含 Fixes #issue-number

代码风格

  • 新代码应遵循 tidyverse style guide。您可以使用 styler 包来应用这些样式,但请不要重新设置与您的 PR 无关的代码的样式。

  • 我们使用 roxygen2,使用 Markdown 语法进行文档编制。我们渴望使用 devtag 来记录内部函数(并非所有函数都已如此记录)。

  • 我们使用 testthat 进行单元测试。请为要提出的更改添加测试用例,或向我们寻求帮助。

命名约定

  • 对最大值使用 max,对最大数量使用 largest

测试文件

我们努力对齐脚本和测试名称。这仍然是一项正在进行的工作,但目标是让来自 R/name.R 的代码在 tests/testthat/test-name.R 中进行测试。这允许借助 usethis::use_test()usethis::use_r() 在两个文件之间轻松切换。

行为准则

请注意,igraph 项目是根据贡献者行为准则发布的。通过为该项目做出贡献,您同意遵守其条款。