TeamCity On-Premises 2026.2 Help

事前テスト済み (遅延) コミット

事前にテストされたコミットは、欠陥のあるコードをビルドにコミットすることを防ぐアプローチであるため、チーム全体のプロセスは影響を受けません。 これらの図は、以下で説明する TeamCity の事前テスト済みコミットのアプローチを示しています。

送信されたコードの変更は、最初にテストを通過します。 コードがすべてのテストに合格した場合、TeamCity は変更をバージョン管理に自動的に送信できます。 そこから、変更は自動的に次のビルドに統合されます。 いずれかのテストが失敗した場合、コードはコミットされず、送信する開発者に通知されます。

開発者は リモート実行を行って、変更をテストします。 成功した場合に変更をコミット オプションを選択すると、事前テスト済みのコミットが有効になります。

事前テストされたコミットは、 サポートされている IDE のいずれかへのプラグインを介して開始されます。 リモートの実行には、コマンドラインツールも 利用できます(英語)

Git および Mercurial では、ブランチからパーソナルビルドを実行するには、 ブランチリモート実行トリガー アプローチを使用することをお勧めします。

変更とビルド構成の照合

変更されたファイルを事前テスト済みコミットまたはリモート実行に送信するには、VCS 統合が IDE で機能し、TeamCity が、ファイルをコミットしたときにサーバー上のビルド構成に影響するかどうかを確認できる必要があります。

TeamCity が変更とビルドを照合できない場合、"送信された変更をビルド構成に適用できません" というメッセージが表示されます。

VCS 統合は IDE で正しく構成され、TeamCity は開発者のワークステーション上のファイルを TeamCity サーバー上に存在するビルド構成と照合できる必要があります。 それを可能にするために、VCS は開発者のワークステーションとサーバーで同じ方法で設定されるべきです。

これも:

  • CVS、TFS、Perforce バージョン管理システムの場合 — バージョン管理サーバーに対してまったく同じ URL を使用します。

  • VSS の場合 — VSS データベースへのまったく同じパス(マシンとパス)を使用します。

  • Subversion の場合 - 同じサーバーを使用します (TeamCity は サーバー UUIDと照合します)。

  • Git の場合 - 現在チェックアウトされているブランチでは、TeamCity サーバーが監視しているサーバー/ブランチに "remote" が設定されている必要があり、サーバーが監視しているブランチと履歴内に共通のコミットがある必要があります。

変更されたファイルの選択時に、TeamCity がそのファイルの送信先となるビルド構成を見つけられない場合、パーソナルビルドを開始するオプションは利用できません。

事前テスト済みコミットの一般的なフロー

  • 開発者は TeamCity IDE プラグインのリモート実行ダイアログを使用して、TeamCity に送信するファイルを選択します。

  • 選択したファイルに基づいて、適用可能なビルド構成のリストが表示されます。 開発者はビルド構成を選択して変更をテストし、事前テスト済みコミットのオプションを設定します。

  • TeamCity IDE プラグインは、選択されたすべてのファイルの完全な内容である "パッチ" を作成し、TeamCity サーバーに送信します。 パッチは開発者のマシン上にローカルに保存されます。 送信されると、変更は開発者の 変更ページに表示されます。 開発者はコードでの作業を続行し、事前テスト済みのコミットに送信されたファイルを変更できます。

  • パーソナルビルドはキューに入れられ、他のキューに入れられたビルドと同様に処理されます。

  • ビルドが開始されると、通常のビルドと同様に最新のソースをチェックアウトし、その後、IDE から送信された開発者の個人用変更を上書き適用します (ファイルの完全な内容が使用されます)

  • ビルドは通常どおり実行されます

  • ビルドの終わりに、個人的な変更はビルドのチェックアウトディレクトリから元に戻され、それが後続のビルドに影響しないようにします。

  • TeamCity IDE プラグインは TeamCity サーバーに ping を送信し、選択されたすべてのビルド構成でパーソナルビルドの準備ができているかどうかを確認します。 ビルドが失敗すると、通知が IDE に表示され、プロセスは終了します。

  • すべての個人用ビルドが正常に完了すると、IDE プラグインは進捗を表示し、個人用変更に含まれるファイルの現在のバージョンをバックアップし (事前テスト済みコミットが開始された後にすでに変更されている可能性があるため)、その後、保存された "パッチ" からファイルの内容を復元し、バージョン管理のコミットを実行し (VCS が競合するなどのエラーがあった場合はエラーを報告します)、直前にバックアップしたファイルを復元して、作業コピーを最後に確認された状態に戻します。 TeamCity プラグインウィンドウ内の事前テスト済みコミットに、エラーまたは成功のマークが付きます。

2026 年 9 月 11 日