Azure Repos とは
Azure DevOps Services |Azure DevOps Server 2022 |Azure DevOps Server 2020 |Azure DevOps Server 2019 |TFS 2018
Visual Studio 2022 |Visual Studio 2019 |Visual Studio 2017 |Visual Studio 2015 |Visual Studio 2013
Azure Repos は、コードの管理に使用できるバージョン管理ツールのセットです。 ソフトウェア プロジェクトが大きいか小さいかにかかわらず、できるだけ早くバージョン管理を使用することをお勧めします。
バージョン管理システムは、時間の経過に伴ってコードで行った変更を追跡するのに役立つソフトウェアです。 コードを編集するときに、バージョン管理システムにファイルのスナップショットを作成するように指示します。 バージョン コントロール システムはスナップショットを永続的に保存するので、後で必要なときに呼び戻すことができます。 バージョン管理は、作業を保存し、チーム全体でコードの変更を調整するために使用します。
単一の開発者であっても、バージョン管理はバグを修正し、新機能を開発する際に整理を維持するのに役立ちます。 バージョン管理は開発の履歴を保持するため、コードの任意のバージョンを簡単に確認してロールバックすることもできます。
Azure Repos では、次の 2 種類のバージョン管理が提供されています。
- Git: 分散バージョン管理
- Team Foundation バージョン管理 (TFVC): 一元化されたバージョン管理
Git
Git は現在、最も使用されているバージョン コントロール システムであり、バージョン コントロールの標準になりました。 Git は分散型のバージョン コントロール システムです。これは、コードのご自分のローカル コピーが完全にバージョン コントロールされたリポジトリであることを意味します。 このように完全な機能を備えたローカル リポジトリによって、オフラインまたはリモートでの作業が容易になりました。 作業をローカルでコミットし、次にリポジトリのコピーをサーバー上のコピーに同期させます。
Azure Repos の Git は、標準の Git です。 Git for Windows、Mac、パートナーの Git サービス、および Visual Studio や Visual Studio Code など、お好きなクライアントとツールを使用できます。
- お気に入りの開発環境を接続する
- pull requests を使用してコードを確認する
- ポリシーを使用してブランチを保護する
- プル要求状態でプル要求ワークフローを拡張する
- フォークを使用してコードを分離する
お気に入りの開発環境を接続する
お気に入りの開発環境をAzure Reposに接続してリポジトリにアクセスし、作業を管理します。 次を使用してコードを共有します。
pull requests を使用してコードを確認する
チームでコードを確認し、変更がビルドされ、マージされる前にテストに合格していることを確認します。
- pull request を作成する
- 作業項目をプル要求にリンクする
- ブランチ ポリシーを設定する
- スカッシュ マージ pull requests
- Git ブランチと pull request ワークフロー
- コメントを残す
- 変更に投票する
ポリシーを使用してブランチを保護する
リポジトリには、チームが常に適切な形になるように依存している重要なブランチがいくつかあります (ブランチなど master
)。
これらのブランチで変更を行うには、プル要求が必要です。
保護されたブランチに変更を直接プッシュする開発者は、プッシュを拒否します。
プル要求に条件を追加して、キー ブランチに高いレベルのコード品質を適用します。 マージされたコードと複数の校閲者からの承認のクリーン ビルドは、キー ブランチを保護するために設定できる追加の要件です。
プル要求状態でプル要求ワークフローを拡張する
プル要求とブランチ ポリシーを使用すると、チームはコードのレビューと自動ビルドの実行に関連する多くのベスト プラクティスを適用できます。 しかし、多くのチームには、コードに対して実行する追加の要件と検証があります。 これらの個々のニーズとカスタムのニーズに対応するために、Azure Reposはプル要求の状態を提供します。
プル要求の状態は PR ワークフローに統合されます。 これにより、外部サービスは、単純な成功/失敗情報をプル要求に関連付けることによって、コード変更にプログラムでサインオフできます。
- プル要求の状態の概要
- Node.jsを使用して PR 状態サーバーを作成する
- Azure Functions を使用してカスタム ブランチ ポリシーを作成する
- 外部サービスのブランチ ポリシーを構成する
フォークを使用してコードを分離する
フォークは、試験的、危険、または機密の変更を元のコードベースから分離するための優れた方法です。 フォークは、すべてのファイルやコミット、および必要な場合はブランチも含め、リポジトリの完全なコピーです。 新しいフォークは、誰かが元のリポジトリを複製し、新しい空のリポジトリにプッシュしたかのように機能します。
フォークが作成された後、プル要求がそれらを実行しない限り、新しいファイル、フォルダー、およびブランチはリポジトリ間で共有されません。 これらの変更を共有する準備ができたら、 プル要求 を使用して変更を元のリポジトリにプッシュし直します。
TFVC
Azure Reposでは、Team Foundation バージョン管理 (TFVC) もサポートされています。 TFVC は、一元化されたバージョン管理システムです。 通常、チーム メンバーの開発用コンピューターには、各ファイルの 1 つのバージョンだけが存在します。 履歴データはサーバーにのみ保持されます。 分岐はパスに基づき、サーバー上で作成されます。
プロジェクトの作成、ワークスペースの構成、コードの確認と共有を開始します。 次のいずれかのクライアントまたは IDE を使用できます。