審閱 Pull Requests#
使用工作流程功能#
當審閱 pull requests 時,請適當地使用 Github 上的工作流程追蹤功能
在您完成審閱,並想要要求提交者進行變更之後
將您的審閱狀態變更為 “要求變更”。
這可以在 Github、PR 頁面、
Files changed
標籤頁、Review changes
(右上角的按鈕) 上完成。或者:新增
needs-work
標籤。這可以在 PR 頁面右側的
Labels
選單中完成。
當您再次重新審閱同一個 pull request,並想要要求更多變更時
再次執行 “要求變更” 的動作,即使之前的狀態也是 “要求變更”。
或者:移除現有的
needs-work
標籤,然後再次重新新增該標籤。(Github 會在頁面上新增您已執行此操作的通知。)
如果您對目前的狀態感到滿意
將 pull request 標記為「已核准」(與「要求變更」的方式相同)。
或者:移除
needs-work
標籤。或者 (針對核心開發者):如果您認為 pull request 已準備好合併,則合併它。
這允許自動追蹤哪些 PR 需要關注。
某些資訊也可以直接在 Github 上看到,儘管 (截至 2019 年 8 月) Github 不會顯示哪些 pull requests 在上次審閱後已更新。
來自 pull request 的程式碼#
當您審閱其他人建立的 pull request 時,在您自己的機器上擁有他們的程式碼副本會很有幫助,這樣您就可以在本地端進行操作。
一種方法是安裝 GitHub CLI,然後在終端機中導航至 SciPy 根目錄並輸入
gh pr checkout PULL_REQUEST_ID
其中 PULL_REQUEST_ID
是與 pull request 對應的五位數字 (例如 10286
,對於 PR #10286)。這會立即將 pull request 簽出到一個分支,其名稱與 PR 作者使用的名稱相符。
假設您依照 從原始碼建置 設定了您的開發環境,您現在可以啟用您的開發環境
conda activate scipy-dev
建置程式碼並測試它
python dev.py test -v
如果您從 IPython 內 import
SciPy (使用 python dev.py ipython
啟動它),您將匯入作者修改後的 SciPy 版本。
如果您想與作者協作處理他們的 PR,您可能反而想要為作者的 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
),那麼您可以建立一個 pull request,將您的變更與作者的儲存庫合併。