TeamCity 2020.1ヘルプ

Mercurial

TeamCityは、典型的なMercurialコマンドラインクライアントであるhgコマンドを使用します。Mercurial 1.5.2+がサポートされています。

ご了承ください:

  • IDEからのリモート実行はサポートされていません。代わりにブランチ リモート実行トリガを使用してください。

  • .=><target_dir> ルールを除き、エージェント側チェックアウトのチェックアウトルールはサポートされていません。一般的なVCSルートプロパティについては、このセクションを参照してください。以下のセクションには、Mercurial固有のフィールドとオプションの説明が含まれています。

TeamCityは、すぐにMercurialをサポートします。

一般設定

オプション

説明

変更をプル

ホスティングのURL。

デフォルトブランチ

ブランチ仕様がない場合、またはブランチ仕様のブランチが見つからない場合に使用したデフォルトブランチに設定します。ここではパラメータ参照がサポートされていることに注意してください。

ブランチ仕様

このエリアには、変更を監視するすべてのブランチをリストします。構文はチェックアウトルールに似ています: +|-:branch_name、ここで branch_name はVCSに固有です(オプションの * プレースホルダーを使用)。1つのアスタリスクのみが許可され、各ルールは新しい行で開始する必要があることに注意してください。ブックマークは、ブランチおよびブランチ仕様フィールドでも使用できます。ブックマークの名前が通常のブランチと同じ場合、通常のブランチが勝ちます。関連するTeamCityブログ投稿(英語)の詳細。

ブランチとしてタグを使用

ブランチ仕様でタグを使用できます。デフォルトでは、タグは無視されます。

サブレポの変更を検出する

デフォルトでは、サブリポジトリの変更は監視されません。

タグ/マージのユーザー名

ラベル付けに使用されるカスタムユーザー名

非圧縮転送を使用する

非圧縮転送は、LAN内のリポジトリの方が高速です。

HGコマンドパス

hg実行可能ファイルへのパス。ホワイトリストに含まれる場合にのみ、TeamCityサーバーで使用されます。以下を参照してください。

hg実行可能ファイル検出へのパス

エージェントが起動すると、hg-pluginはエージェントマシンにインストールされたMercurialを検出します。

プラグインは、teamcity.hg.agent.path パラメーターで指定されたパスを使用して hg version コマンドを実行しようとします。このパラメーターは、<エージェントホームディレクトリ> \ conf \ buildAgent.propertiesで変更できます。

このパラメーターが設定されていない場合、プラグインは hg をコマンドへのパスとして使用します($PATHのどこかにあると想定します)。コマンドが正常に実行され、mercurialに適切なバージョン(1.5.2+)がある場合、hg-pluginは teamcity.hg.agent.path パラメーターでhgへのパスを報告します。

ビルド中、プラグインはVCSルート設定のHGコマンドパスフィールドで指定されたhgを使用します。検出されたhgを使用するには、このフィールドに %teamcity.hg.agent.path% を入力します。このような設定を使用した構成は、hgへのパスを報告するエージェントでのみ実行されます。

プラグインのサーバー側は、teamcity.hg.customServerHgPathWhitelist 内部プロパティの値をチェックします。このプロパティには、サーバーで使用できる許可されたhgパスの ; -separatedリストが含まれています。VCSルートで指定されたパスがホワイトリストにある場合、サーバーで使用されます。そうでない場合は、teamcity.hg.server.path 内部プロパティで指定されたパスが使用されます。このプロパティが設定されていない場合、TeamCityサーバーは $PATHhg を使用します。

エージェント設定

これらは、すべてのエージェントにMercurialをインストールする必要があるエージェント側のチェックアウト( デフォルトモード)の場合に使用される設定です。

オプション

説明

Mercurial設定

エージェント側のチェックアウト中にリポジトリに適用されるMercurial構成オプションを指定します。たとえば、largefiles 拡張を有効にするには、次を入力します。

[extensions] `largefiles =

設定形式については、ここで説明します。

2017.2.2より前は、このオプションはTeamCityサーバーでも使用されていました。これはセキュリティ上の理由で無効にされました。

パージ設定

現在のリポジトリのMercurialによって追跡されていないファイル(英語)とディレクトリを削除する(英語)かどうかを定義します。不明なファイルと空のディレクトリのみを削除するか、無視されたファイルも削除するかを選択できます。追加されたファイルと(変更されていないまたは変更された)追跡されたファイルは保持されます。

鏡を使う

有効にすると、TeamCityは最初に(エージェントの system/mercurial ディレクトリに)ローカルエージェントミラーを作成し、このローカルミラーから作業ディレクトリにクローンを作成します。ビルド作業ディレクトリのみがクリーンアップされるため、このオプションはクリーンチェックアウトを高速化します。また、単一のルートが複数のビルド構成で使用されている場合、クローンは高速になります。

内部プロパティ

このセクションでは、hg関連の内部プロパティについて説明します。デフォルトを変更して、必要に応じてMercurial設定を調整できます。

サーバー側の内部プロパティ

プロパティ

デフォルト

説明

teamcity.hg.pull.timeout.seconds

3600

プル操作を実行する最大時間(秒)

teamcity.hg.server.path

hg

サーバー上のhg実行可能ファイルへのパス(詳細については、hg実行可能ファイル検出へのパスを参照)。

teamcity.hg.customServerHgPathWhitelist

; -TeamCityサーバーマシンで使用するhg実行可能ファイルへの許可パスの分離リスト

Mercurialのエージェント設定

プロパティ

デフォルト

説明

teamcity.hg.pull.timeout.seconds

3600

プル操作を実行する最大時間(秒)

teamcity.hg.agent.path

hg

エージェントで実行可能なhgへのパス(詳細については、hg実行可能ファイル検出へのパスを参照)。