プロジェクトの作成と編集
TeamCity では、実際のビルドタスクは ビルド構成と パイプラインによって実行されます。 ただし、どちらもプロジェクト内に配置する必要があります。
このトピックでは、プロジェクトを作成するさまざまな方法を説明します。
ルートプロジェクトと設定の継承
始める前に、すべての TeamCity サーバーには、 ルートプロジェクト という削除できない組み込みプロジェクトが含まれていることに注意してください。 すべての新しいプロジェクトはこのプロジェクトの子として作成されますが、ビルド構成やパイプラインを直接ホストすることはできません。
TeamCity では、子プロジェクトは 接続や クラウドエージェントプロファイルなど、多くの設定とエンティティを親プロジェクトから継承します。 ルートプロジェクトでは、この概念を活用してサーバー全体のリソースを定義できます。 たとえば、サーバー上のすべてのプロジェクトからアクセスできるクラウドエージェントを生成する AWS クラウドプロファイルを作成できます。
編集モードで <ルートプロジェクト> パンくずリスト項目をクリックすると、ルートプロジェクト設定に移動できます ...

または、 <your_server_URL>/admin/editProject.html?projectId=_Root の URL に直接アクセスしてください。 ユーザー権限はプロジェクトベースであるため、設定を編集できるのはルートプロジェクト管理者のみであることにご注意ください。
TeamCity UI で新しいプロジェクトを作成
新しい TeamCity プロジェクトは、対応するサイドバーボタンを使用して追加できます。 プロジェクト メニュー項目の横にある 作成 ボタンを使用すると、 ルートプロジェクトが直接所有するトップレベルプロジェクトを追加できます。

既存のプロジェクトのサブプロジェクトを追加するには、そのプロジェクトの横にある同一のボタンをクリックします。

新規プロジェクト ページでは、プロジェクトの名前と (オプションで) 説明を入力するように求められます。

作成 をクリックすると、プロジェクトが作成され、TeamCity によって ビルドをセットアップする。 ページが表示されます。 このページでは、新しいプロジェクトの子要素を追加できます。
ビルド構成 — 同じエージェント上で実行される一連のビルドステップ。 様々なビルド機能を含めることができ、ビルドチェーン内の他の構成へのリンクも作成できます。 この従来型の TeamCity エンティティは、最も細かく制御でき、高度なシナリオをサポートしますが、新規ユーザーにとっては設定が難しい場合があります。
パイプライン — ビルドステップを含むジョブのコレクションです。 高度なビジュアルエディターと YAML サポートを備えた直感的な UI を備えています。 この新しいエンティティは現在も開発が進められており、ビルド構成のすべての機能を備えているわけではありませんが、使いやすく、シンプルなワークロードや初心者に適しています。
これらのオプションのいずれかを選択するか、ページの右上隅にある 閉じる をクリックできます。 後者のオプションでは空の新規プロジェクトが作成され、そのプロジェクトを使用してプロジェクト階層を設定できます: トップレベルプロジェクトを作成し、後でサブプロジェクトを追加できます。 ビルド構成やパイプラインは、 プロジェクト設定 の 一般 タブから、またはナビゲーションサイドバーの "+" アイコンをクリックして、いつでも追加できます。
Kotlin DSL で新しいプロジェクトを作成
次の Kotlin コードは、2 つのサブプロジェクトを持つプロジェクトを作成します。
リモートリポジトリに保存されている設定をインポートする TeamCity プロジェクトを作成するには:
新規プロジェクト ページで、 プロジェクト DSL をインポート (クラシック UI) をクリックします (上記のイメージを参照)。
手動で タイルを選択して空のプロジェクトを作成し、その名前を入力します。
プロジェクト設定で、 バージョン対応設定 タブに移動します。
同期が有効化されています をチェックし、 VCS ルートを作成 をクリックします。

DSL 設定を保存するリモートリポジトリに接続するようにルートを設定します。 詳細については、 VCS ルートの構成 の記事を参照してください。
適用 をクリックします。 TeamCity がリポジトリに接続したら、 VCS からプロジェクト設定を読み込む… を選択します。
デフォルトでは、TeamCity はプロジェクト設定に双方向同期を使用します:
TeamCity UI で行った編集は、VCS にコミットされます。
バージョン設定の変更は UI に反映されます。
構成ファイルを唯一の編集可能なソースにするには、 UI 経由でのプロジェクト設定の編集を許可 チェックボックスをオフにします。
詳細については、次の記事を参照してください。
REST API から新しいプロジェクトを作成
次のリクエストは、指定した親プロジェクトが所有する新しい空の TeamCity プロジェクトを作成します。
詳細については、次の REST API ドキュメント記事を参照してください: プロジェクトの作成と削除。
プロジェクトを管理
利用可能なすべてのプロジェクトとサブプロジェクトは、 プロジェクト ページでデフォルトでアルファベット順にリストされて表示されます。 管理者は デフォルトの順序をカスタマイズできます。
リストからプロジェクトを選択すると、TeamCity は プロジェクトホーム ページを表示します。このページで、ネストされたビルド構成と最近のビルド結果をプレビューできます。 プロジェクトの設定にアクセスするには、右上隅の対応するトグルをクリックして 編集モードに切り替えます。
プロジェクトをコピー、移動、削除、 アーカイブするには、 プロジェクト設定ページの右上隅にある アクション メニューを使用します。

これらのオプションはルートプロジェクトでは使用できません。
プロジェクトをコピー
プロジェクト アクション メニューを呼び出し、 プロジェクトをコピー… をクリックします。 プロジェクト管理者はプロジェクトをコピーしたり、別のプロジェクトに移動したりできます。
コピーでは、元のプロジェクトのすべての設定、 サブプロジェクト、 ビルド構成、 テンプレートが複製されますが、ビルドに関連するデータは保存されません。 コピーは、空の ビルド履歴と 統計なしで作成されます。
プロジェクトを同じ親または別の親にコピーできます。
コピー時に、TeamCity はコピーに新しいお名前と ID を自動的に割り当てます。 名前と ID は手動で変更することもできます。
プロジェクトに関連付けられたユーザー、エージェント、その他の設定をコピー オプションを選択すると、通知ルールやエージェントの互換性などのすべての設定が、影響を受けるすべてのユーザーとエージェントについて、コピーされたプロジェクトと元のプロジェクトで完全に同じになります。
ビルド構成のビルド番号をコピーすることもできます。
プロジェクトを移動
プロジェクト アクション メニューを呼び出し、 プロジェクトを移動… をクリックします。
プロジェクトを移動すると、TeamCity はすべての設定、 サブプロジェクト、 ビルド構成/テンプレート 、関連データ、および ビルド履歴 を保持します。
プロジェクトをアーカイブ
プロジェクト アクション メニューを呼び出し、 プロジェクトをアーカイブ… をクリックします。 TeamCity プロジェクトのアーカイブの詳細については、次のヘルプ記事を参照してください: プロジェクトのアーカイブ。
ID の一括編集
プロジェクト アクション メニューを呼び出し、 ID を一括編集 をクリックします。
現在のプロジェクトとビルド構成 ID が表示されます。 すべてのサブプロジェクト、VCS ルート、ビルド設定、テンプレートの ID を修正またはリセットできます。 再生成 をクリックして新しい ID を自動的に取得するか、手動で編集します。
送信 をクリックします。
トリガーを一時停止 / 有効化
プロジェクト アクション メニューを呼び出し、 一時停止 / 有効化… をクリックして、このプロジェクトが所有する複数のビルド構成に対して構成された トリガーを一時的に無効にします。
プロジェクトをエクスポート
プロジェクトの アクション メニューを呼び出し、 プロジェクトをエクスポート… をクリックして プロジェクトを別の TeamCity サーバーに移動します。
プロジェクトを削除
プロジェクト アクション メニューを呼び出し、 プロジェクトを削除… をクリックします。
プロジェクトを削除すると、TeamCity はその .xml 構成ファイルを除去します。 削除後、プロジェクトは \< TeamCity データディレクトリ \>/config/_trash/.ProjectID.projectN ディレクトリに移動されます。 削除されたプロジェクトのデータベースに保存されているすべてのプロジェクト関連データ (ビルド履歴、アーティファクトなど) が次回のビルド履歴の消去中に完全に除去されるまでに、 設定可能な タイムアウト (デフォルトでは 5 日) があります。
TeamCity Data Directory /config/_trash/ ディレクトリは自動的にはクリーンアップされないため、削除したプロジェクトが不要であることが確かな場合は手動で空にできます。