リビジョン
リビジョンとは、バージョン管理履歴の特定の状態を指します。基本的にはソースコードのバージョンです。 変更が発生すると、通常は"リビジョン"と呼ばれる数字または文字コードで識別されます。
完了済みまたはキューに入っているビルドに含まれる 変更を表示する場合、TeamCity は対応するリビジョンも表示します。 このページでは、TeamCity がビルド用の VCS リビジョンを選択する方法について説明します。
TeamCity は、 プロジェクトまたは ビルド構成に新しい VCS ルートを追加したとき、または既存の VCS ルートの 設定を変更したときに、現在のリポジトリリビジョンを記憶します。
その後、TeamCity はリポジトリ全体を監視せず、TeamCity で指定されたリポジトリのスコープ、つまり構成済みの VCS ルート設定 と チェックアウトルール で指定された範囲の変更のみを収集します。
ビルドに影響する最新の検出済み変更に対応するソースのリビジョンは、 変更ページに VCS ルートリビジョンとして表示されます。このページには、 プロジェクト ページ上のリンクからアクセスできます。また、 ビルド結果 の 変更タブにも表示されます。
リビジョンの順序
いずれかの VCS ルートで新しいコミットを検出すると、TeamCity はこのコミットに、段階的に増加する内部 ID を割り当てます。 TeamCity サーバーで検出されたすべてのコミットは、これらの ID でソートされます。
ビルドを開始すると、TeamCity はビルドの VCS ルートをスキャンし、各ルートについて、内部のソート順に従って、最新の ID のコミットに対応するリビジョンをチェックアウトします。 このように、TeamCity は最新コミットの ID に基づいてソースリビジョンを並べます。
これは、たとえば、最上位のリビジョンの順序が以前に実行されたどのビルドよりも低いビルドを 履歴ビルドとして設定して区別するために使用されます。
VCS ルート変更時のリビジョン変更
最後に検出された変更以降に VCS ルートの設定が変更された場合、TeamCity のリビジョンは、新しく構成された VCS ルートの最後の変更とは異なります。 TeamCity にはこの新しいルートでの以前の変更に関する情報がないため、新しい設定で変更の監視を開始し、ビルドリビジョンを最初に検出された変更に設定します。 変更が発見されるまで、リポジトリの現在のリビジョン以外のリビジョンを取得する方法はありません。 そのため、TeamCity はソースの正解となるリビジョンをビルドしますが、VCS ルートの変更後の最初のビルドのリビジョンは、指定されたパスでの最後の変更とは一致しません。