审查拉式请求

使用工作流功能

在审核拉取请求时,请根据需要使用Github上的工作流跟踪功能:

  1. 在您完成审核后,希望要求提交者进行更改:

    • 将您的审阅状态更改为“请求更改”。

      这可以在Github的公关页面上完成 Files changed 选项卡, Review changes (右上角的按钮)。

    • 或者:将 needs-work 标签。

      这可以在公关页面上完成, Labels 菜单在右边。

  2. 当您再次重新审核相同的拉取请求,并希望请求更多更改时:

    • 即使之前的状态也是“请求更改”,也要再次执行“请求更改”的操作。

    • 或者:删除现有的 needs-work 标签,然后再次重新添加标签。(GitHub将在页面上添加您这样做的通知。)

  3. 如果您对当前状态感到满意,请执行以下操作:

    • 将拉式请求标记为已批准(与请求更改的方式相同)。

    • 或者:删除 needs-work 标签。

    • 或者(针对核心开发人员):如果您认为可以合并拉取请求,则将其合并。

这允许自动跟踪哪些PR需要关注。

审查状态在以下位置列出:https://pav.iki.fi/scipy-needs-work/也可以使用https://github.com/pv/github-needs-work生成页面

一些信息也可以直接在Github上看到,尽管(截至2019年8月)Github没有显示自上次审查以来更新了哪些拉取请求。

拉取请求中的代码

当您查看其他人创建的Pull请求时,在您自己的计算机上拥有他们的代码副本会很有帮助,这样您就可以在本地使用它。

执行此操作的一种方法是导航到终端中的SciPy根目录,然后输入::

git fetch upstream pull/PULL_REQUEST_ID/head:NEW_BRANCH_NAME

哪里 PULL_REQUEST_ID 是与拉取请求对应的五位数字(例如 10286PR #10286 )和 NEW_BRANCH_NAME 是您想用来指代作者代码的任何名称(例如 review_10286 )。

现在您可以查看分支机构::

git checkout NEW_BRANCH_NAME

它会转换本地存储库中的代码,使其与作者修改后的SciPy版本相匹配。

假设您根据 开发环境快速入门指南(MacOS)开发环境快速入门指南(Ubuntu) ,您现在可以激活您的开发环境::

conda activate scipydev

构建代码并对其进行测试::

python setup.py build_ext --inplace
python runtests.py -v

如果你 import 来自Python的SciPy,您将导入作者修改后的SciPy版本。

如果您想与作者就他们的公关进行协作,您可能想要设置一个新的遥控器连接到作者的SciPy::

git remote add REMOTE_NAME https://github.com/AUTHOR/scipy.git

哪里 AUTHOR 是作者的GitHub用户名,并且 REMOTE_NAME 是您想用来引用此作者的存储库的任何名称。

从那里,您可以查看作者的分支::

git remote show REMOTE_NAME

并根据其中之一创建您自己的分支机构::

git checkout --track REMOTE_NAME/BRANCH_NAME

哪里 BRANCH_NAME 是要从其开始的分支的名称。这将在您的本地存储库中创建此分支的副本(同名)。如果更改此分支并推送到您GitHub存储库 (origin ),然后您可以创建一个拉取请求,将您的更改与作者的存储库合并。