4

VSTS で monorepo を使用している場合、コミットですべてではなく 1 つのパッケージのみを更新することがあります。その場合、その特定の部分のビルドのみを実行し、他には何も実行したくありません。

私は継続的インテグレーションを使用しているため、たとえば何かがコミットされるたびにビルドさmasterれます。悲しいことに、このビルド プロセスには時間がかかる可能性があり、コードの 1 つのセクションだけが変更された場合は、そのプロジェクトのみをビルドしたいと考えています。

私は Git コミットを更新しているので、特定のディレクトリ内のファイルに変更が加えられたかどうかを確認することができますが、もっと良い方法があるはずだと思います.

注:私のプロジェクトは Node.js と Webpack を使用し、Docker Compose を使用してビルドします。

4

1 に答える 1

5

CI トリガーにはパス フィルターがあります。これを使用して、同じ mono リポジトリでより個別のビルド定義をトリガーできます。

ここに画像の説明を入力

MsBuild およびその他のツールには、インクリメンタル ビルドのオプションが用意されています。これらは、ファイルが変更されたかどうか、およびどのプロジェクトを再コンパイルする必要があるかを自動的に検出します。これには、ビルドが同じビルド エージェントで一貫してトリガーされ、リポジトリと出力フォルダーが消去されないようにする必要があります。

于 2018-02-15T08:20:38.650 に答える