檢閱並提交提取要求
提取要求 (PR) 是您取得 Learn 平台知識的票證。 您已建立 PR,但是尚未提交至目的地存放庫的 PR 佇列。 與許多開放原始碼專案一樣,在發佈之前會進行一系列檢查和檢閱來驗證變更。
PR 的結構
PR 會顯示建立 PR 的 GitHub 使用者、目的地存放庫,以及建立 PR 所在的分支。 PR 頂端包含數個索引標籤,包括:
- [交談] 索引標籤:您可以在其中檢視及回覆其他共同作業者的註解、查看整個建置和檢閱程序的通知清單,以及使用註解自動化來執行動作。
- [認可] 索引標籤:已對該分支進行變更的記錄。
- [已變更的檔案] 索引標籤:PR 中變更檔與其先前狀態的比較。
請仔細注意 [交談] 索引標籤,這是任何更新或通知出現的位置,以及您、檢閱者和其他共同作業者之間進行任何討論的地方。 您也可以在這裡新增主題標籤註解來執行動作,例如簽核 PR,以指出其已準備好進行驗證和合併,或如果您需要暫停程序,則予以保留。
PR 通常會附加標籤來指出其狀態,例如 draft
指定尚未準備好檢閱的草稿 PR,或 do-not-merge
適用於新的或未檢視的 PR。
驗證
在 PR 可以合併至其目的地分支之前,可能需要通過一或多個 PR 驗證程序。 選取 [建立提取要求] 之後,GitHub 會執行為存放庫設定的驗證。 當驗證程序完成時,結果會出現在 PR 中。
驗證程序會根據建議的變更範圍和目的地存放庫的規則而有所不同。 提交 PR 之後,您可以預期會發生下列一或多個動作:
- 可合併性:先進行基準 GitHub 可合併性測試,以確認分支中建議的變更是否與目的地分支衝突。 如果 PR 指出此測試失敗,您必須先協調造成合併衝突的內容,才能繼續處理。
- 貢獻授權合約 (CLA):如果您參與公用存放庫,且不是 Microsoft 員工,依據建議的變更規模而定,系統可能會在您第一次將 PR 提交至該存放庫時,要求您完成簡短的 CLA。 清除 CLA 步驟之後,將會處理您的 PR。
- 加上標籤:標籤會自動套用至您的 PR,以指出 PR 通過驗證工作流程的狀態。 例如,新的 PR 可能會自動收到「不要合併」標籤,指出 PR 尚未完成驗證、檢閱和簽核步驟。
- 驗證和建置:自動檢查會驗證變更是否通過驗證測試。 驗證測試可能會產生警告或錯誤,要求您變更 PR 中的一或多個檔案,然後才能合併。 驗證測試結果會在您的 PR 中新增為註解,以供檢閱使用,也可能會以電子郵件傳送給您。
- 預備位置:受變更影響的文章頁面會自動部署到預備環境,於驗證及建置成功時檢閱。 PR 註解會顯示預覽 URL。
- 自動合併:如果 PR 通過驗證測試和特定準則,可能會自動合併。 在此情況下,您不需執行其他任何動作。
檢閱並簽核
還差一點點就完成了! 完成所有 PR 處理之後,最好先檢閱結果 (例如 PR 註解、預覽 URL),以判斷在簽核以進行合併之前是否需要更多變更。 如果 PR 檢閱者已檢閱您的 PR,而且發現防止合併的未完成問題時,他們也可以透過註解提供意見反應。
使用註解自動化在 PR 中執行重要動作。 註解自動化可讓使用者將適當的標籤指派給其 PR,以更新其狀態或將其分類。 如果您在實作註解自動化的存放庫中工作,請使用主題標籤註解來指派或變更標籤、關閉 PR 或暫停合併。 例如,當您完成變更時,請輸入註解 “#sign-off”,將 PR 標籤從 do-not-merge
變更為 ready-for-review.
使用下表中的註解,在您的 PR 中執行關鍵動作:
主題標籤註解 | 作用 |
---|---|
#sign-off |
自動指派準備合併標籤,讓存放庫中的檢閱者知道 PR 已準備好進行檢閱/合併。 如果您不是表列作者,並嘗試使用 #sign-off 註解來簽核公用存放庫 PR,PR 會更新為指出只有作者可以指派標籤。 |
#hold-off |
移除準備合併標籤,以防您改變主意或犯錯。 |
#please-close |
如果您決定不合併變更,則關閉 PR。 |
#please-open |
重新開啟已關閉的 PR 或問題。 |
您必須輸入註解 #sign-off,才能合併變更。 即使所有檢閱和驗證檢查都通過,您仍須負責使用此註解來告訴 PR 檢閱者和存放庫系統管理員,您的變更已準備好從您那一端合併。 當檢閱者判斷您的 PR 沒有問題且已簽核時,您的變更會合併回父代分支,並關閉 PR。
正在發佈
請記住,您的 PR 必須由 PR 檢閱者合併,才能在下一次排程發佈執行中包含變更。 一般而言,PR 會依提交順序進行檢閱和合併。
在核准及合併您的貢獻之後,發佈程序會挑選它們。 根據管理您參與之存放庫的小組而定,發佈時間可能會有所不同,但是通常會在每個工作日至少發生一次。 文章發佈上線最多約需 45 分鐘。
發佈您的變更之後,變更會在 Microsoft Learn 上線,讓其他人開始學習!
案例:將變更發佈至 Azure App Service
使用您過去的體驗,您發現有機會將一些有用的資訊新增至 App Service 文件頁面,並建立 PR 來新增變更。 您現在已準備好檢閱並簽核您的 PR,以發佈您的編輯。