継続的インテグレーションを使用する

継続的インテグレーション (CI) は、チーム メンバーがコード変更をバージョン管理にコミットするたびに、コードを自動的に構築してテストするプロセスです。 共有リポジトリのメイン ブランチまたはトランク ブランチにコードをコミットすると、自動ビルド システムがトリガーされ、ブランチ全体がビルド、テスト、検証されます。 CI は、開発者がタスクを完了するたびに変更を共有バージョン管理リポジトリにマージすることで、コードと単体テストを共有することを奨励します。

ソフトウェア開発者は多くの場合、単独で作業し、その変更をチームのコード ベースの残りの部分と統合する必要があります。 コードの統合に数日または数週間待つと、多くのマージ競合、修正が困難なバグ、分岐するコード戦略、重複した作業が発生する可能性があります。 CI では、開発チームのコードを共有バージョン管理ブランチに継続的にマージする必要があるため、これらの問題を回避できます。

CI はメイン ブランチを最新の状態に保ちます。 開発者は、Git などの最新のバージョン管理システムを使用して、有効期間の短い機能ブランチで作業を分離できます。 機能が完了すると、開発者は機能ブランチからメイン ブランチにプル リクエストを送信します。 プル リクエストが承認されると、変更がメイン ブランチにマージされ、フィーチャー ブランチを削除できます。

開発チームは、作業項目ごとにこのプロセスを繰り返します。 チームは支店ポリシーを確立して、本店が望ましい品質基準を維持できるようにすることができます。

ビルド定義では、メイン ブランチへのコミットごとに自動化されたビルドおよびテスト プロセスがトリガーされるように指定します。 自動テストにより、すべてのビルドが一貫した品質を維持していることが検証されます。 CI は開発サイクルの早い段階でバグを発見し、修正コストを削減します。 

CI は、最新の DevOps プラットフォームの標準機能です。 GitHub ユーザーは、GitHub Actionsを通じて CI を実装できます。 Azure DevOps ユーザーは Azure Pipelines を使用できます。