Azure DevOpsのソースコード管理ツール「Azure Repos」を使いこなそう
Azureのクラウド環境でDevOpsを実現する「Azure DevOps」入門 第3回
本連載では、Microsoft Azureのクラウド環境上でDevOpsを実現するAzure DevOpsについて紹介します。前回はAzure Boardsの具体的な使用方法について紹介しました。今回はソースコード管理サービスであるAzure Reposについて説明していきます。
はじめに
前回に引き続きAzure DevOpsが提供する各サービスについて紹介していきます。今回はソースコード管理サービスであるAzure Reposについて説明していきます。
対象読者
- Microsoft Azureや他のクラウドサービスを利用している方
- アジャイル開発を行っている方
- DevOpsの一通りの流れを理解したい方
Azure Reposとは?
Azure Reposは、ソースコード管理システムのデファクトスタンダードとなっているGitのリモートリポジトリを、クラウド上にホスティングしたサービスです。Azure DevOpsのサービスラインナップの一つです。
GitもしくはTeam Foundation Version Control(TFVC)を使用してソースコードを管理できます。開発チームのメンバーは、Azure Reposを使用してコードの変更履歴を追跡し、コードレビューを実施し、ブランチを使用した並行開発が可能です。
主な機能
Azure Reposの特徴として、主に以下の要素が挙げられます。
(1)無制限でプライベートリポジトリを作成できる
Azure Reposでは、以下のリポジトリを作成できます。
- 誰でもリポジトリを参照できるパブリックリポジトリ
- 参照する範囲を制限できるプライベートリポジトリ
他のサービスではプライベートリポジトリの作成数に制限がある場合もありますが、Azure Reposでは無制限で作成可能です。
(2)プルリクエストやリポジトリのフォークなど、他のリポジトリホスティングサービスと同等の機能の提供
コードの品質を保つために、コードをレビューする際にはプルリクエストを使用すると便利です。
プルリクエストとは、ブランチのマージ時に他の開発者によるコードレビューを行い、レビューが承認されることでマージが行えるようにする機能です。プルリクエストはGitの機能ではなく、はじめはGitHubによって提供された機能ですが、Azure Reposでもサポートしています。
他にもリポジトリを複製するフォークや、ブラウザ上から直接リモートブランチのコードを編集できる機能など、他のサービスが提供している機能の多くをサポートしているため、他のサービスを使用した経験があればスムーズにAzure Reposを使用できるでしょう。
(3)他のAzure DevOpsサービスとの親和性の高さ
Azure Reposの最大の特徴はAzure DevOpsのサービスラインナップの一つである点で、他のAzure DevOpsのサービスとシームレスに連携できるようになっています。
たとえばAzure Boardsで作成したタスクに関連するブランチを作成したり、Azure ReposへのコミットをトリガーにしてAzure Pipelinesでソースコードのビルドとデプロイを行ったりといった連携が非常に簡単にできます。また、Azure DevOpsとしてWeb画面が集約されているのも使いやすいポイントです。
(4)さまざまなブランチポリシーを設定できる
Azure Reposでは、効率的なブランチ管理のために、さまざまなポリシーを設定できます。
- 特定のブランチへの直接プッシュを禁止:mainブランチやdevelopブランチなど、運用上重要となるブランチを保護することで不適切な変更の反映を防げる。
- マージ前のコードレビューの必須化:コード品質の担保と、チーム間での知識共有やコーディングルールの統一化などを促進できる。
- CI/CDパイプラインによるビルドの成功の必須化:マージ前にビルドの成否を確認することで、不具合の混入を防げる。
- Azure Boardsの作業項目とのリンクによるトレーサビリティの確保:Azure Boardsに記述した作業内容(要件)とコードの変更を紐づけることで、作業の履歴管理と追跡性を強化できる。
(5)セキュリティとアクセス制御
Azure Reposでは、以下のきめ細かいアクセス制御も可能です。
- リポジトリレベルの権限設定
- ブランチレベルの権限設定
- 個別のユーザーまたはグループへの権限付与
また、Entra ID(旧Azure Active Directory)と統合することで、企業の認証基盤と連携したシングルサインオンの実装も可能です。
この記事は参考になりましたか?
- Azureのクラウド環境でDevOpsを実現する「Azure DevOps」入門連載記事一覧
- この記事の著者
-
WINGSプロジェクト 秋葉 龍一(アキバ リュウイチ)
<WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書、記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
山田 祥寛(ヤマダ ヨシヒロ)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
