建立提取要求

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 |Visual Studio 2022

建立提取要求 (PR),以變更、檢閱及合併 Git 存放庫中的程式代碼。 您可以從上游存放庫中的分支或存放庫分支建立 PR。 您的小組可以 檢閱PR ,並提供變更的意見反應。 檢閱者可以逐步執行建議的變更、留下批注,以及投票以核准或拒絕PR。 根據 分支原則 和其他需求,您的 PR 可能需要符合各種準則,才能 完成 PR 並將變更合併至目標分支。

如需PR指導方針和管理考慮,請參閱 關於提取要求

必要條件

  • 您的項目必須啟用存放庫 。 如果 Repos樞和相關聯的頁面未顯示,請參閱開啟或關閉 Azure DevOps 服務以重新啟用 Repos。

  • 若要檢視或檢視 PR,您必須是具有 基本 存取或更高許可權的 Azure DevOps 項目成員。

    • 如果您沒有專案,請建立一個專案或 免費註冊。
    • 如果您不是項目成員, 請新增
  • 若要參與PR,您必須是讀取者安全組的成員,或具有對應的許可權。

  • 若要建立和完成PR,您必須是參與者安全組的成員,或具有對應的許可權。

    注意

    針對公用專案,獲得 項目關係人 存取權的使用者具有 Azure Repos 的完整存取權。

  • 您的項目必須啟用存放庫 。 如果 Repos樞和相關聯的頁面未顯示,請參閱開啟或關閉 Azure DevOps 服務以重新啟用 Repos。
  • 若要檢視或檢視 PR,您必須是具有 基本 存取或更高許可權的 Azure DevOps 項目成員。 如果您不是項目成員, 請新增
  • 若要建立和完成PR,您必須是參與者安全組的成員,或具有您想要變更之專案中的對應許可權。
  • 若要參與PR,您必須是讀取者安全組的成員,或具有對應的許可權。

建立提取要求

您可以從 Azure DevOps 專案網站、Visual Studio 或 Azure DevOps CLI 建立新的 PR。

您可以從 Azure DevOps 專案網站建立新的 PR:

從提取要求頁面建立PR

您可以從您專案的 [提取要求 ] 頁面上,為任何分支建立 PR。

  1. 在 [Repos>提取要求] 頁面上,選取右上方的 [新增提取要求]。

    [新增提取要求] 按鈕的螢幕快照。

  2. 選取具有變更的分支,以及您想要將變更合併至的分支,例如main分支。

    Azure Repos 中 P R 的來源和目標分支螢幕快照。

  3. 輸入您的PR詳細數據 並建立PR。

從推送分支建立PR

推送或更新功能分支之後,Azure Repos 會顯示建立PR的提示。

  • 在 [ 提取要求 ] 頁面上:

    顯示提示在 Azure Repos 中的 [提取要求] 索引卷標上建立 P R 的螢幕快照。

  • 在 [ 檔案] 頁面上:

    顯示提示在 Azure Repos 中的 [檔案] 索引標籤上建立 P R 的螢幕快照。

選取 [建立提取要求 ] 以移至您可以 輸入PR詳細數據並建立PR的頁面

從連結的工作專案建立PR

您可以直接從連結至分支的 Azure Boards 工作專案建立 PR。

  1. 在 Azure Boards 中,從 [工作] 檢視中的待辦專案查詢,開啟連結至分支的工作專案。

  2. 在工作專案的 [ 開發 ] 區域中,選取 [ 建立提取要求]。

    使用連結分支從工作專案的 [開發] 區域建立PR的螢幕快照。

此連結會帶您前往頁面,您可以在 其中輸入 PR 詳細數據 並建立 PR。

使用櫻桃選擇新增更新

您可以使用櫻桃挑選,將認可從一個分支複製到另一個分支。 不同於合併或重新基底,櫻桃選擇只會從您選取的認可中帶來變更,而不是分支中的所有變更。

若要從已完成的 PR 進行櫻桃挑選變更,請在 PR 的 [概觀] 頁面上選取 [櫻桃選擇]。 若要從作用中的 PR 複製變更,請從 PR 的 [更多選項] 選單中選取 [櫻桃選擇]。 此動作會建立具有複製變更的新分支。 然後,您可以從新的分支建立新的 PR。 如需詳細指示,請參閱 使用櫻桃挑選複製變更。

切換提取要求的來源和目標分支

第一次儲存PR之前,您可以選取 分支名稱旁的 [切換來源和目標分支] 圖示,以切換PR的來源和目標分支 。 一旦 PR 處於作用中狀態,此圖示就會消失,但您仍然可以 變更 PR 的目標分支

切換來源和目標分支圖示的螢幕快照。

使用提取要求範本

提取要求範本是一個檔案,其中包含當您建立PR時填入PR描述的 Markdown 文字。 良好的PR描述會告知PR檢閱者預期什麼,並可協助追蹤工作,例如新增單元測試和更新檔。 您的小組可以建立預設 PR 範本,將文字新增至存放庫中所有新的 PR 描述。 此外,您可以從分支特定範本或其他小組定義的範本中選取。 如需建立和使用PR範本的詳細資訊,請參閱 使用範本改善提取要求描述。

如果您的存放庫有預設範本,則存放庫中的所有PR在建立時都會有預設範本的描述文字。 若要新增其他範本,請選取 [新增範本 ],然後從下拉式清單中選擇範本。 您可以在描述中編輯範本文字、移除範本文字,或新增其他文字。

顯示建立 P R 時新增範本的螢幕快照。

建立草稿 PR

如果您的 PR 尚未準備好進行檢閱,您可以建立草稿 PR 來指出進行中的工作。 當 PR 準備好進行檢閱時,您可以加以發佈,然後開始或繼續完整檢閱程式。

草稿 PR 與已發佈的 PR 有下列差異:

  • 建置驗證原則不會自動執行。 您可以選取 PR 中的 [更多選項] 功能表,手動將組建驗證排入佇列。

  • 在草稿模式中,投票會停用。

  • 不會自動新增必要的檢閱者。 通知只會傳送給您明確新增至草稿 PR 的檢閱者。

  • 草稿 PR 會顯示在具有草稿徽章的 PR 清單中

    顯示 P R 清單中草稿 P R 的螢幕快照。

注意

建立草稿 PR 需要 Azure DevOps Server 2019.1 更新或更新版本。

若要建立草稿 PR,請選取 [建立] 旁的箭號,然後在建立 PR 時選取 [建立為草稿]。 您不需要使用 WIP 或 DO NOT MERGE 等標題前置詞。

顯示建立為草稿 P R 的螢幕快照。

當您準備好檢閱並完成PR時,請選取 PR右上角的 [發佈 ]。 發佈PR會指派必要的檢閱者、評估原則,以及開始投票。

顯示 P R 發行的螢幕快照。

若要將現有的已發佈PR變更為草稿,請選擇 [ 標示為草稿]。 將PR標示為草稿會移除所有現有的投票。

顯示標示為草稿的螢幕快照。

新增或編輯提取要求標題和描述

在 [ 新增提取要求 ] 頁面上,輸入 變更的標題 和詳細 描述 ,讓其他人可以看到變更所解決的問題。 在新的 PR 上,如同現有 PR,您可以在個別索引標籤上看到 PR 中的檔案認可 。 您可以新增檢閱者、連結工作專案,以及將標籤新增至PR。

當您準備好檢閱變更時,請選取 [建立 ] 以建立PR。

顯示建立新 P R 的螢幕快照。

將詳細數據新增至新的 P R。

如果您建立PR時尚未準備好所有工作專案、檢閱者或詳細數據,請不要擔心。 建立PR之後,您可以新增或更新這些專案。

編輯PR標題和描述

讓PR標題和描述保持在最新狀態,讓檢閱者可以瞭解PR中的變更。

您可以選取目前的標題並更新文字,以更新現有PR的標題。 選取 [儲存] 圖示以儲存變更,或選取 [復原] 圖示以捨棄變更。

選取 [描述] 區段中的 [編輯] 圖示,以編輯PR描述

顯示編輯 P R 標題並選取 [描述編輯] 按鈕的螢幕快照。

將檢閱者新增至提取要求

您可以在新的或現有的 PR 的 [檢閱者] 區段中新增檢閱者。 您也可以要求現有的選擇性檢閱者,或將必要的檢閱者變更為選擇性或移除,除非原則需要這些檢閱者。

分支原則可能需要 最少的檢閱者數目,或自動在PR中包含特定選擇性或必要的檢閱者。 您無法移除分支原則所需的檢閱者。 您可以將分支原則選擇性檢閱者變更為必要專案,或將其移除。

若要查看自動新增檢閱者的分支原則,請在 [PR概觀] 頁面的 [檢閱者] 區段中,以滑鼠右鍵按兩下檢閱者旁的 [更多選項]。

顯示分支原則自動包含檢閱者檢視原則的螢幕快照。

如果您想要檢閱PR的使用者或群組不是項目的成員,您必須先 將它們新增至專案 ,才能將他們新增為檢閱者。

若要將檢閱者新增至新的PR:

  1. 在 [新增提取要求] 頁面上的 [檢閱者] 底下,選取 [搜尋使用者和群組] 以新增為檢閱者
  2. 當您輸入名稱或電子郵件位址時,下拉式清單會顯示相符的使用者和群組清單。 從清單中選取要新增為選擇性檢閱者的名稱。
  3. 若要新增必要的檢閱者,請選取 [新增必要的檢閱者],然後選取 [搜尋] 以新增必要的檢閱者 來搜尋並選取名稱。

將檢閱者新增至新 P R 的螢幕快照。

若要將檢閱者新增至現有的 PR:

  1. 在 [概觀] 頁面的 [檢閱者] 區段中,選取 [新增],然後選取 [必要檢閱者] 或 [選擇性檢閱]。

    提取要求概觀

  2. 當您輸入名稱或電子郵件位址時,會出現相符的使用者或群組清單。 選取要新增為檢閱者的名稱。

    新增 P R 檢閱者。

若要在必要和選擇性之間變更檢閱者,或移除檢閱者,請選取 檢閱者名稱右邊的 [更多選項 ]。 若要查看指定為檢閱者之群組或小組的成員資格,請選取群組的圖示。

若要將工作項目連結至新的 PR:

  1. 在 [新增提取要求] 頁面上,於 [要連結的工作專案] 下,選取 [依標識符或標題搜尋工作專案]。
  2. 開始輸入工作專案標識碼或標題,然後從出現的下拉式清單中選取要連結的工作專案。 依標題搜尋會傳回依狀態篩選的工作專案;已排除狀態類別 已完成移除 狀態的所有工作專案。 這些工作專案也會依日期和用戶進行篩選,其中只會顯示過去 30 天內建立或更新的專案,而且應該由建立、指派給或授權為目前使用者的專案。

若要將工作項目連結至現有的PR:

  1. 在 [PR 概觀] 索引標籤的 [工作專案] 區域中,選取 +

    顯示選取 [概觀] 索引標籤和 [工作專案] 區段的螢幕快照。

  2. 輸入工作專案的標識碼,或搜尋工作項目標題。 從出現的清單中選取工作專案。

選取工作專案旁邊的 x 圖示,以移除工作項目連結。 拿掉連結只會移除工作專案與 PR 之間的連結。 在分支或認可中建立的連結會保留在工作專案中。

若要將工作項目連結至您的 PR:

  1. 選取 PR 中的 [ 概觀 ] 索引標籤。

    顯示選取 [概觀] 索引標籤和 [鏈接專案] 按鈕的螢幕快照。

  2. 選取 [工作專案] 區域中的 [新增] 按鈕。 在 PR 中新增圖示

  3. 輸入工作專案的標識碼,或搜尋具有符合文字標題的工作專案。 從出現的清單中選取工作專案。 依標題搜尋會傳回依狀態篩選的工作專案;已排除狀態類別 已完成移除 狀態的所有工作專案。 這些工作專案也會依日期和用戶進行篩選,其中只會顯示過去 30 天內建立或更新的專案,而且應該由建立、指派給或授權為目前使用者的專案。

選取將滑鼠停留在工作專案上方時出現的 [移除] 按鈕,以移除工作項目連結。 拿掉按鈕 拿掉連結只會移除工作專案與 PR 之間的連結。 在分支或認可中建立的連結會保留在工作專案中。

將標籤新增至提取要求

使用標籤來顯示重要詳細數據,並協助組織PR。 卷標可以將額外的資訊傳達給檢閱者,例如 PR 仍在進行中,或是即將發行的 Hotfix。

顯示具有標籤之 P Rs 的螢幕快照。

若要在建立PR時新增標籤,請在 [標記] 區段中輸入標籤名稱。 建立 PR 之後,您可以在 [卷標] 區段中管理標籤

顯示醒目提示 [P R 卷標] 區段的螢幕快照。

將附件新增至提取要求

您可以在建立期間或之後,將檔案,包括影像附加至 PR。 選取 [描述] 欄位下方的剪紙圖示,或直接將檔案拖放到 PR 的 [描述] 欄位中。

顯示建立期間將檔案附加至 P R 描述的螢幕快照。

變更使用中提取要求的目標分支

對於大多數小組,幾乎所有的 PR 都會以預設分支為目標,例如 maindevelop。 如果您有時需要以不同的分支為目標,當您建立PR時,很容易忘記變更目標分支。 如果發生這種情況,您可以變更使用中 PR 的目標分支:

  1. [PR 概觀] 頁面上選取右上方的 [更多動作],然後從下拉功能表中選取 [變更目標分支]。
  2. 在 [ 變更目標分支 ] 窗格中,選取 [ 選擇目標分支],選取新的分支,然後選取 [ 變更]。

電子郵件提取要求通知給項目關係人

您可以透過電子郵件共用提取要求,以通知檢閱者並與小組成員通訊。 若要共用PR:

  1. 在 [PR 概觀] 頁面上選取 [更多選項],然後選取 [共用提取要求]。

    顯示選取 P R [概觀] 頁面上 [共用提取要求] 的螢幕快照。

  2. 在 [ 共用提取要求 ] 畫面上 ,在 [收件者: ] 字段中輸入其名稱,然後從出現的使用者名稱中選取,以新增收件者。 您也可以移除收件者。

  3. [附注][選擇性] 字段中新增選擇性訊息,然後選取 [ 傳送]。 收件者會收到一封電子郵件,要求他們注意並連結到 PR。

注意

如果您使用內建的電子郵件功能,您只能將電子郵件傳送至專案成員的個別位址。 不支援將小組群組或安全組新增至 [至: ] 行。 如果您新增系統無法辨識的電子郵件帳戶,您會收到一或多個電子郵件收件者沒有許可權讀取已傳送提取要求的郵件。

若要讓電子郵件功能運作,Azure DevOps Server 的系統管理員必須 設定 SMTP 伺服器

下一步