Subversion
この記事には、VCS ルートを設定するときに使用できる Subversion 固有のフィールドとオプションの説明が含まれています。
一般的な VCS ルートプロパティについては、ここで説明します。
SVN 接続設定
オプション | 説明 |
|---|---|
URL | プロジェクトソースを指す SVN URL を指定します。 |
ユーザー名 | SVN ユーザー名を指定します。 |
パスワード | SVN パスワードを指定してください。 |
構成ディレクトリ | 代替の Subversion 構成ディレクトリを指定するか、デフォルトのディレクトリを使用することができます(推奨)。この設定は、エージェント側のチェックアウトにも適用されます。TeamCity は認証を SVN 構成ディレクトリに保存しませんが、そこに保存されている設定を読み取ることができます。 |
デフォルトの構成ディレクトリを使用する | このオプションを有効にすると、これが SVN 接続のデフォルトの構成ディレクトリになります。 |
外部サポート | 次のオプションのいずれかを選択して、SVN 外部処理を制御します。
|
HTTPS 接続: 信頼できない SSL 証明書を受け入れる | 有効にすると、TeamCity は適切に署名された SSL 証明書なしで SVN サーバーに接続できます。 |
SSH 設定
オプション | 説明 |
|---|---|
秘密鍵ファイルのパス | OpenSSH 形式の秘密鍵が含まれるファイルへの完全パスを指定します。 SSH キーを TeamCity にアップロードも指定できます |
秘密鍵ファイルのパスワード | SSH 秘密鍵のパスワードを入力してください。 |
SSH ポート | SSH が使用するポートを指定してください。 |
キーでは OpenSSH 形式のみがサポートされています。TeamCity でサポートされていない形式の鍵は、OpenSSH 形式に変換する必要があります(たとえば、Putty 秘密鍵(*.ppk)は PuTTYgen.exe を使用して変換できます: 変換 | OpenSSH キーをエクスポートするを参照)。
エージェント設定のチェックアウト
オプション | 説明 |
|---|---|
作業コピーの形式 | 作業コピーの形式を選択します。このオプションで使用可能な値は 1.4 ~ 1.8 (現在のデフォルト) です。
|
更新前に元に戻す | このオプションを選択すると、TeamCity はソースを更新する前に常に |
ラベリング設定
オプション | 説明 |
|---|---|
ラベル付け規則 | リポジトリの構造を定義する、改行で区切られた一連のルールを指定します。詳細については、詳細な形式の説明を参照してください。 |
SVN 外部認証
TeamCity では、ユーザーインターフェースで SVN 外部認証パラメーターを明示的に指定することはできません。SVN 外部サーバーで認証するために、以下のアプローチが使用されます。
メインリポジトリと同じ認証情報(ユーザー名 / パスワード)を使用して認証する
明示的なユーザー名 / パスワードなしで認証します。この場合、認証情報はすでに svn プロセスで利用可能であるべきです(通常、それらは subversion 構成ディレクトリに保存されています)。そのため、これには SVN 接続設定に正しい " 構成ディレクトリ " または "Default Config Directory" オプションを設定する必要があります。
TeamCity が外部の SVN に接続しなければならないとき、以下のシーケンスを使います:
SVN 外部 URL がメインリポジトリと同じ接頭辞を持つ場合(20 文字以上の一致がある場合)、TeamCity は最初にメインリポジトリの認証情報を試し、失敗した場合は username/password なしで接続を試みます。(彼らは SVN 構成ディレクトリから拾いました)
SVN 外部 URL がメインリポジトリと著しく異なる場合は、TeamCity はユーザー名 / パスワードなしで接続を試み、失敗した場合はメインリポジトリからの資格情報を使用します。
タイムアウト
リモート SVN サーバーの SVN チェックアウト操作が、svn: E175002: timed out waiting for server のようなエラーで失敗する場合があります。通常、これはネットワークの速度低下または SVN サーバーのオーバーロードが原因で発生する可能性があります。接続および読み取り操作のタイムアウト値を構成できます。
接続タイムアウト
接続タイムアウトは、TeamCity が SVN サーバーへの接続を作成するときに適用されます。この操作のデフォルトのタイムアウトは 60 秒であり、teamcity.svn.connect.timeout プロパティを介して秒単位で指定できます。
プロパティの値は、サーバー側のチェックアウトとエージェント側のチェックアウトで異なる方法で設定されます。
サーバー側の操作 — 内部プロパティを構成します。
エージェント側のチェックアウト — スタートアッププロパティを追加します。
読み取りタイムアウト
SVN サーバーとの接続が確立され、TeamCity がサーバーからのデータを待っているときに、読み取りタイムアウトが使用されます。タイムアウトの値は SVN サーバーアクセスプロトコルによって異なります。
HTTP/HTTPS 経由の Subversion サーバーアクセス (サーバー / エージェント両方)
HTTP 読み取りタイムアウトの場合、TeamCity は Subversion 構成ディレクトリの servers ファイルで指定された http-timeout 設定を使用します。Win32 システムでは、このディレクトリは通常、ユーザーのプロファイルディレクトリのアプリケーションデータ領域にあります。Unix/Mac では、このディレクトリは通常、TeamCity サーバー / エージェントを実行するユーザーアカウントの $HOME/.subversion という名前です。
指定しない場合、タイムアウトのデフォルト値は 1 時間です。
svn:// または svn + ssh:// 経由の Subversion サーバーアクセス
この場合、読み取りタイムアウトは、TeamCity teamcity.svn.read.timeout 内部プロパティを介して秒単位で指定できます。デフォルト値は 30 分です。
プロパティの値は、サーバー側のチェックアウトとエージェント側のチェックアウトで異なる方法で設定されます。
サーバー側の操作 — 内部プロパティを構成します。
エージェント側のチェックアウト — スタートアッププロパティを追加します。
無視された変更
TeamCity は svn:mergeinfo プロパティの変更を無視し、特定のコミットでこれらのプロパティのみが変更された場合はディレクトリが変更されたとは見なしません。
無視される SVN プロパティのリストは、TeamCity 内部プロパティ teamcity.svn.ignorable.properties を介して変更できます。このプロパティの値は、SVN プロパティのコンマ区切りのリストです。デフォルト値は svn:mergeinfo です。
関連ページ:
ビルドでのユーザーの変更の表示
コードベースの品質を監視することは、開発チームにとって不可欠です。プロジェクト開発者は、コミットによってビルドが失敗したかどうかを確認する必要があります。プロジェクトリーダーにとって、ビルドの失敗の障害のあるコードを検出して状況を早期に修正できるようにすることが重要です。これにより、チームの他のメンバーが不便を感じることはありません。TeamCity UI の変更ページでは、すべての TeamCity ユーザーによって行われたコミットを確認し、それらがビルドにどのように影響したかを確認できます。...
バージョン管理でのプロジェクト設定の保存
TeamCity では、プロジェクト設定をバージョン管理リポジトリ(VCS)と同期できます。サポートされている VCS は、Git、Mercurial、Perforce、Subversion、Azure DevOps Server(旧 TFS)です。プロジェクト設定を XML 形式または Kotlin 言語で保存し、Kotlin ベースの DSL を使用してプログラムで設定を定義できます。重要なポイント:この機能は何をしますか ? 個々のプロジェクトの設定を XML または Kotlin 形式でリモ...
VCS チェックアウト規則
VCS チェックアウトルールを使用すると、構成された VCS ルートの一部をチェックアウトし、バージョン管理のディレクトリをビルドエージェントのビルドチェックアウトディレクトリのサブディレクトリにマップすることができます。リポジトリ全体の VCS ルートを定義し、各ビルド構成にその関連部分のみをチェックアウトするように指示することができます。チェックアウトルールは、UI に表示されるビルドの変更と、エージェント上のビルドでチェックアウトされるファイルに影響します。コミットがビルドの VCS ルー...
SSH 鍵管理
秘密 SSH キーを TeamCity プロジェクトにアップロードできます。アップロードされたキーは、VCS ルートの設定時および SSH エージェントビルド機能で使用できます。サポートされているキー形式:TeamCity は、PEM および OpenSSH 形式のキーをサポートします。異なる形式を使用するキーは変換する必要があります。例:PuTTY キージェネレーターを使用して、サポートされていない Putty 秘密鍵 () を PEM 形式に変換できます。これを行うには、変換 | OpenS...
VCS ラベリング
TeamCity は、バージョン管理システムで特定のビルドのソースに(自動または手動で)ラベルを付ける(タグを付ける)ことができます。適用されたラベルとその適用ステータスのリストは、ビルド結果の変更タブに表示されます。自動 VCS ラベル付け:TeamCity を設定して、ビルドのステータスに応じてビルドのソースに自動的にラベルを付けることができます。ラベル付けは標準の通知イベントではありません。ビルドが終了した後にバックグラウンドで実行され、ビルドステータスには影響しません。ただし、現在のビ...