關於分支和分支原則

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

分支原則是 Git 工作流程的重要部分,可讓您:

  • 將進行中的工作與主要分支中已完成的工作隔離
  • 在變更進入main之前保證變更建置
  • 限制誰可以參與特定分支
  • 強制執行誰可以建立分支和分支的命名指導方針
  • 自動包含每個程式代碼變更的正確檢閱者
  • 使用必要的程式代碼檢閱者強制執行最佳做法

下表摘要說明您可以定義來自定義分支的原則。 如需所有存放庫和分支原則和設定的概觀,請參閱 Git 存放庫設定和原則

原則

Default

說明


關閉

在提取要求上,需要指定數目的檢閱者核准。

關閉

檢查提取要求上是否有連結的工作專案,以鼓勵可追蹤性。

關閉

檢查是否已解決提取要求的所有批注。

關閉

藉由限制提取要求完成時可用的合併類型來控制分支歷程記錄。

關閉

新增一或多個原則,藉由預先合併和建置提取要求變更來驗證程序代碼。 也可以啟用或停用原則。

關閉

新增一或多個原則,以要求其他服務張貼成功狀態以完成提取要求。 也可以啟用或停用原則。

關閉

新增一或多個原則,以指定程式代碼檢閱者在提取要求變更特定程式代碼區域時自動包含。 也可以啟用或停用原則。

採用 Git 分支策略

您的存放庫中有一些重要分支,小組一直仰賴其狀態良好,例如您的 main 分支。

要求提取要求 在這些分支上進行任何變更。 若開發人員直接將變更推送至受保護分支,系統將會拒絕他們的推送。

透過從下列三個概念建置策略,讓您的分支策略保持簡單:

  1. 所有新功能和 Bug 修正均需使用功能分支。
  2. 使用提取要求將功能分支合併至主要分支。
  3. 保持高品質的最新主要分支。

擴充這些概念並避免矛盾的策略,會導致小組的版本控制工作流程一致且容易遵循。

在分支中建立工作

Git 分支與其說是保留認可確切歷程記錄的小型參考,不如說是容易建立。

變更認可至分支不會影響其他分支。 您可以與其他人共用分支,而不需要將變更合併至主要專案。

您可以建立新的分支,以隔離功能變更,或從主要分支和其他工作修正 Bug。

由於分支是輕量型的,因此在分支之間切換是快速且容易的。 使用分支時,Git 不會建立來源的多個複本,它會使用儲存在認可中的歷程記錄資訊,在開始處理分支時重新建立分支上的檔案。

您的 Git 工作流程 應該建立和使用分支來管理功能和錯誤修正。

Git 工作流程的其餘部分,例如共用程式代碼,並使用提取要求檢閱程式代碼,全都透過分支運作。

在分支中隔離工作可讓您透過變更最新分支,輕鬆地變更您正在處理的工作。

如何建立 Git 分支?

您可以使用 命令建立分支 branchBranch 在 Git 中為新分支建立參考,並將指標指向父認可,如此一來,當您將認可新增至分支時,Git 可以保留變更的歷程記錄。

當您使用其他人共用的分支時,Git 會保留上游追蹤關聯性。 關聯性會將本機存放庫上的分支與遠端存放庫上的對應分支產生關聯。

上游追蹤可讓您使用推送提取,輕鬆地將變更與其他人同步處理。

Git 中分支的視覺效果

在此螢幕快照中,您可以看到從主要分支建立的新分支。 同時在分支和認可上繼續工作會新增至這兩個分支。

Git 一律會將新的認可新增至目前的本機分支。 在認可之前,請先檢查您正在處理的分支,以免將變更認可到錯誤的分支。

使用 checkout 命令在本機分支之間交換。 Git 會變更計算機上的檔案,以符合簽出分支上的最新認可。

當您在分支中的工作已準備好與小組的其餘部分共用時,您可以 推送 變更來更新遠端分支。

常見的錯誤是進行一些變更,並 commit 發現您位於不正確的分支,然後 checkout 移至正確的分支。

您最近的變更將不再位於文件系統上,因為每個分支都有自己的程式碼版本。

Git 會將檔案的狀態帶回您交換之分支的最後一個認可,而不是您進行變更的前一個分支。

您必須從分支挑選認可,或將變更合併至正確的分支。

使用分支來管理開發

Git 會追蹤您正在處理的分支,並確定當您 checkout 的分支時,您的檔案符合分支上最新的認可。

分支可讓您同時在同一個本機 Git 存放庫中使用多個版本的原始程式碼。

告知 Git 您想要使用的 checkout分支,而 Git 會負責設定該分支的正確檔案版本。

當您使用分支來隔離工作時,您的系統上不需要多個存放庫。

複製之後一次設定開發環境。 然後,使用 Git 分支在功能工作與 Bug 修正之間交換。

分支操作指南

瞭解如何在處理分支時完成一般工作。