フォルダー内にブランチの作成を義務付ける

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

多くのユーザーがリポジトリで共同作業を行っている場合、ブランチの数と名前はすぐに制御できなくなる可能性があります。 階層ブランチ フォルダーは、混乱を鎮める効果的な方法です。 Azure DevOps Services、TFS、Visual Studio では、/ がフォルダー区切り文字として扱われ、フォルダーが既定で自動的に折りたたまれます。 こうすることで、目的のブランチを見つけるためにすべてのブランチをくまなく調べる必要がなくなります。 正しく理解するために全員に頼る必要もありません。 Azure Repos と TFS を使用すると、ブランチ フォルダーの正しい使用を強制できます。

計画

許可するフォルダー構造を決定します。 例として、次の規則を適用するようにリポジトリを設定します。

  • リポジトリのルートに存在できるのは main だけです。
  • すべてのユーザーが、feature/users/ の各フォルダーの下にブランチを作成することができます。
  • 管理者は release/ フォルダーの下にブランチを作成できます。

注意

ブランチの名前付け方法のその他の例と情報については、「Git ブランチ戦略を採用する」を参照してください。

準備

  • Team Foundation バージョン コントロール コマンド (tf.exe) が必要になります。
  • ご自分のアカウントまたはコレクションの URL、プロジェクトの名前、リポジトリの名前が必要になります。 この例では、https://fabrikam-fiber.visualstudio.comFabrikamProjectFabrikamRepo を使用します。

注意

コマンド tf.exe は、Visual Studio と共に既定でインストールされます。 これには開発者コマンド プロンプトからアクセスできます。 その他のオプションについては、チーム エクスプローラーをダウンロードしてください。

アクセス許可を適用する

[スタート]>[Visual Studio]>[開発者コマンド プロンプト] の開発者コマンド プロンプトで次のコマンドを実行します。 各コマンドの前に、実行内容の説明が付いています。 個人用アクセス トークンがキャッシュされていない場合 (Azure DevOps Services の Web ポータルにサインインした場合など)、ログインするように求められます。

最初に、プロジェクトの共同作成者のリポジトリ ルートでブランチの作成アクセス許可をブロックします。

tf git permission /deny:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo

次に、共同作成者が featureusers の下にブランチを作成できるようにします。

tf git permission /allow:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:feature
tf git permission /allow:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:users

管理者が release の下にブランチを作成できるようにします。

tf git permission /allow:CreateBranch /group:"[FabrikamProject]\Project Administrators" /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:release

最後に、(誤って削除された場合に備えて) 管理者が main という名前のブランチを作成できるようにします。

tf git permission /allow:CreateBranch /group:"[FabrikamProject]\Project Administrators" /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:main

注意

詳細については、「tf git アクセス許可」を参照してください。 コマンド ラインから tf git /?tf git permission /? を実行して、これらのコマンドのヘルプにアクセスすることもできます。

以前のブランチの名前を変更する

  1. Web 上でリポジトリを開き、[ブランチ] ビューを選択します。

  2. 既存のブランチを見つけます。 表示されない場合は、[すべて] タブを確認する必要がある場合があります。

  3. コンテキスト メニュー (... ボタン) を選び、[新しいブランチ] を選びます。

    [ブランチの作成] メニュー

  4. ブランチの新しい名前 (users/frank/readme-fix など) を入力します。 [ブランチの作成] を選びます。

    新しいブランチの作成

  5. 以前のブランチ名の横にある赤いごみ箱アイコンを選んで削除します。

    以前のバックアップの削除

注意

設定したカスタム アクセス許可またはブランチ ポリシーは移行されません。