YouTrack サーバー 2024.2 ヘルプ

GitHub の統合

このページの指示に従って、github.com(英語) または自己ホスト GitHub Enterprise インストールでホストされている VCS リポジトリと統合してください。

GitHub との統合により、YouTrack の以下の機能が有効になります。

  • コミットメッセージの YouTrack 課題にコマンドを適用します。詳細については、VCS コミットでのコマンドの適用を参照してください。

  • YouTrack で、課題のアクティビティストリーム内の特定の課題に関連するコミットを追跡します。詳しくは、コミット数を参照してください。

  • プル(マージ)リクエストのステータスを、プルリクエストのタイトルまたは説明で参照されている課題のアクティビティストリームに直接表示します。詳細については、プルリクエストを参照してください。

  • コミットメッセージまたはブランチ名に YouTrack の課題へのリンクを追加します。詳細については、VCS コミットのリンクの課題を参照してください。

  • コミットハッシュを issue summary、description、comment、補足テキストフィールドに貼り付けて、GitHub リポジトリへのリンクを追加します。

前提条件

  • YouTrack はインバウンド接続にアクセス可能です。具体的には、ネットワークが VCS サーバーと YouTrack の間の接続をブロックしていないことを確認する必要があります。

  • GitHub で認証用のパーソナルアクセストークンを生成するために使用するユーザーアカウントには、リポジトリに対する管理または所有者権限があります。

GitHub Enterprise のインストールと統合しており、サーバーとの安全な(HTTPS)接続を確立したい場合は、GitHub サーバー用の SSL 証明書を YouTrack にインポートする必要があるかもしれません。

  • ご使用の GitHub エンタープライズサーバーに、有名な認証局(CA)によって署名された有効な証明書がある場合、JVM ベンダーはすでにルート(CA)証明書を証明書ストアに追加している可能性があります。SSL 証明書をインポートしなくてもサーバーに接続できるはずです。

  • サーバーの証明書が自己署名されている場合は、証明書と公開キーをインポートして安全な接続を確立する必要があります。セキュリティのため、YouTrack と GitHub Enterprise サーバーの両方がプライベートコンピューターネットワーク上で実行されている場合にのみ、このオプションを使用してください。この操作は、低レベルの管理者読み取りおよび低レベルの管理者書き込み権限を持つユーザーのみが使用できます。手順については、「SSL 証明書」を参照してください。

GitHub 統合を構成する

最初のステップは、YouTrack のプロジェクトと GitHub のリポジトリとの間の接続を確立することです。GitHub に接続するには、パーソナルアクセストークンを生成して保存する必要があります。このトークンは、GitHub アカウントに付与されているアクセス権に基づいて、YouTrack にリポジトリへのアクセス権を付与します。

単一のアクセストークンを使用して複数の統合を設定できます。まだ個人用アクセストークンをお持ちでない場合は、このセットアップ手順で YouTrack からの直接リンクを使用して生成することができます。

GitHub リポジトリに接続するには:

  1. YouTrack で 管理> 統合> VCS 統合ページを開きます。

  2. 新しい VCS 統合ボタンをクリックしてください。

    • 新しい VCS 統合ダイアログが開きます。

      new GitHub VCS integration
  3. メイン YouTrack プロジェクトリストから、VCS リポジトリと統合するプライマリプロジェクトの名前を選択します。リポジトリへの接続を設定した後で、追加の YouTrack プロジェクトとの統合を追加できます。

  4. サーバータイプの場合は、GitHub を選択します。

  5. GitHub リポジトリを指す URL をリポジトリ URL 入力フィールドに貼り付けます。

  6. 個人用アクセストークンを個人アクセストークン入力フィールドに貼り付けます。アクセストークンをまだ持っていない場合は、次の手順に従います。

    1. トークンの生成リンクをクリックして GitHub で新しい個人用アクセストークンページを開きます。

      generate token in GitHub
    2. トークンの説明を入力してください。

    3. YouTrack からのリンクを使用して新しい個人用アクセストークンページにアクセスすると、必要なスコープがすべて選択されます。このページに直接アクセスした場合は、reporead.orgadmin:repo_hook のスコープを選択します。

    4. トークンの生成ボタンをクリックしてください。

    5. トークンをクリップボードにコピーします。

      copy token in GitHub
    6. YouTrack で新しい VCS 統合ダイアログに戻り、トークンを個人アクセストークンフィールドに貼り付けます。

  7. 保存ボタンをクリックしてください。

    • YouTrack プロジェクトは GitHub の選択したリポジトリと統合されています。

    • プロジェクト内の課題を参照する GitHub リポジトリからのコミットは、参照された課題のアクティビティストリームに表示されます。

    • サイドバーには、VCS 統合を設定するための追加設定が表示されます。

      GitHub integration settings

    これらの設定の詳細については、統合設定を参照してください。

詳細サーバー設定

新しい VCS 統合ダイアログの基本設定を使用してリポジトリへの接続を確立できない場合は、高度なサーバー設定を表示リンクをクリックしてください。

advanced server settings

ターゲットサーバーとの新しい VCS 統合の場合、これらの設定に値を入力するだけで済みます。サーバー上の単一リポジトリとの統合がすでに機能している場合は、これらのパラメーターを再度設定せずに、他のリポジトリとの統合を追加できます。

以下のガイドラインを使用して、これらの設定値を設定してください。

設定

説明

URL

この設定は GitHub のリポジトリへの接続には関係ありません。他の VCS ホスティングサービスとの統合では、この設定はリポジトリへのパスを識別できます。

GitHub リポジトリへのパスは常に 2 つのセグメントで構成されています。リポジトリ URL 設定でこれら 2 つのセグメントの前にあるものはすべて、サーバーへのパスとして自動的に認識されます。

SSL キー

サーバー環境がクライアント SSL 認証を要求するように設定されている場合は、YouTrack サーバーの秘密鍵を含むキーストアを選択します。このキーは、GitHub との接続を確立しようとするときに YouTrack サーバーを識別します。この設定は、内部ネットワークへの接続に必要な HTTPS 認証をサポートするためにのみ使用されます。

リストには、YouTrack にすでにインポートされている SSL キーのみが表示されます。キーストアファイルを生成して YouTrack にアップロードする方法については、SSL キーを参照してください。

統合設定

デフォルトでは、VCS 統合は、任意のブランチの任意のユーザーによってリポジトリにコミットされた変更を処理します。YouTrack で課題にアクセスできるユーザーは、課題アクティビティストリームでこれらの変更を確認できます。

指定されたブランチで特定のユーザーによる変更のみを処理する場合、または YouTrack での VCS 変更の表示を制限する場合は、統合設定をカスタマイズできます。統合をカスタマイズするには、次の設定を使用します。

設定

説明

リポジトリ

統合バージョン管理システムのリポジトリへのパスを表示します。

必要に応じて、統合を設定した後にリポジトリの場所を編集できます。手順については、リポジトリ設定の編集を参照してください。

メイン YouTrack プロジェクト

VCS 統合がアクティブなプライマリプロジェクトを設定します。

追加プロジェクト

リンクされたリポジトリを 1 つ以上の追加プロジェクトと統合します。

コミット者

コミットメッセージ内のコマンドに関する課題を、指定されたグループのメンバーに更新する機能を制限します。選択したグループのメンバーではないユーザーからの VCS の変更は、関連する課題にまだ関連付けられていますが、コミットで指定されているコマンドはすべて無視されます。

VCS 変更の処理スキーム

コミットメッセージが課題 ID を参照する場合に、VCS の変更を処理する方法を選択します。次のオプションがサポートされています。

  • コミットを追加し、コマンドを無視する : コミットメッセージが統合プロジェクトの課題に属する ID を参照している場合、VCS の変更を課題に追加します。コミットメッセージ内のコマンドはすべて無視されます。

  • すべてのプロジェクトにコミットを追加し、メインにコマンドを適用します : コミットメッセージが統合プロジェクトの課題に属する ID を参照している場合、VCS の変更を課題に追加します。現在選択されているメインプロジェクトに属する課題にのみコマンドを適用します。

  • コミットを追加し、すべてのプロジェクトにコマンドを適用します : コミットメッセージが統合プロジェクトの課題に属する ID を参照している場合、VCS の変更を課題に追加します。コミットメッセージにコマンドが含まれている場合、統合プロジェクトの課題を更新します。

監視対象のブランチ

変更をモニターしたいブランチの名前を保管します。

  • + を使用してブランチを含めます。

  • ブランチを除外するには、- を使用します。

  • branch name の場合は、ブランチの完全修飾名を使用してください。例: refs/heads/<branch name>

  • ワイルドカードとして * を使用してください。このプレースホルダは、文字列内の 1 つ以上の文字と一致します。例: すべての機能ブランチを含めるには、次のように使用します。

    +:refs/heads/feature/*

    ブランチパターンごとにワイルドカード文字を 1 つだけ使用できます。複数のアスタリスク文字を含むパターンを指定した場合、最初のアスタリスク文字のみがワイルドカードとして評価されます。

  • すべてのブランチを監視するには、入力フィールドを空のままにします。

リポジトリに接続したときにリポジトリ URL として入力したアドレスが特定のブランチを指している場合、このブランチは、接続のセットアップ時に監視対象のブランチのリストに自動的に追加されます。

課題コメントに対するコミットを解析します

有効にすると、コミットメッセージ内の特定のテキスト行がコメントとして課題にコピーされます。コミットメッセージの一部をコメントとして課題にコピーすると、@mention 通知をトリガーし、VCS の変更にアクセスできないユーザーに情報を公開できます。

この設定は、コミットメッセージが VCS の変更にどのように表示されるかには影響しません。コマンドや課題のコメントを含むコミットメッセージ全体は、アクティビティストリームの VCS 変更レコードの一部として常に表示されます。

次の場合にのみこのオプションを有効にしてください。

  • コミットメッセージで他のユーザーにメンションし、テキストが issue のコメントにコピーされたときに通知を生成します。

  • VCS の変更の可視性を制限し、コミット関連の情報をコメントとして外部ユーザーに見えるようにします。

YouTrack がメッセージをコミットする方法の詳細については、VCS コミットでのコマンドの適用を参照してください。

課題の参照については、ブランチ名を確認してください

有効にすると、統合は、コミットおよびプルリクエストのブランチ名で課題への参照をチェックします。このオプションは、チケットごとのブランチプロセスを使用するチーム向けに追加されたため、開発者はコミットメッセージで課題 ID を明示的にメンションする必要がありません。

VCS 変更の表示対象

VCS 変更の可視性を YouTrack 内の 1 つ以上のユーザーグループに制限します。制限されていない場合、VCS の変更点のリストは、課題を読む権限を持つすべてのユーザーに表示されます。

使用可能なアクション

リストで統合バージョン管理システムを選択すると、ツールバーで次のアクションを使用できます。

アクション

説明

使用不可

統合プロジェクトと VCS リポジトリ間の接続を遮断します。設定は変更されず、いつでも有効にできます。

編集

選択したプロジェクトとリポジトリのサイドバーにある統合設定ダイアログを開きます。

削除

YouTrack から統合プロジェクトの設定を削除します。

このアクションにより、リンクされたリポジトリのコミットの課題に追加されたすべての VCS の変更も削除されます。

アクション自体を元に戻すことはできませんが、インポートアクションを使用して、誤って削除された VCS の変更を復元できます。

コミットのインポートとプルリクエストのオープン

リンクされたリポジトリのコミット履歴を確認し、コミットメッセージで参照されている課題に VCS の変更を追加します。このオプションは、現在有効になっている統合でのみ使用できます。

このアクションを使用して、統合が誤って削除されたときに削除された VCS の変更を復元したり、新しいプロジェクトの課題へのリンクを移行したりできます。

トラブルシューティング

状態 — YouTrack での VCS の変更として、VCS コミットの課題への参照は表示されません。

原因

ソリューション

統合 VCS の Web フックが存在しない、無効になっている、その他の不正な形式です。

VCS リポジトリの設定で Web フックを確認してください。Web フックが存在し、それらが有効になっていることを確認してください。

Web フックに課題があると思われる場合は、VCS の設定で Web フックを削除するか無効にして、YouTrack に新しい VCS 統合を設定してください。

条件 — VCS コミットで指定されたコマンドは、YouTrack の課題には適用されません。

原因

ソリューション

リポジトリへの変更をコミットしたユーザーは、統合設定のコミット者グループのメンバーではありません。

YouTrack で指定されたグループにコミッターを追加するか、統合設定で選択を変更してください。

リポジトリへの変更をコミットしたユーザーには、接続プロジェクトの課題を更新する権限がありません。

これらのユーザーをプロジェクトチームに追加するか、読み取り課題権限と更新の課題権限を含むプロジェクト内のロールを割り当てます。

YouTrack は、コミットメッセージの作成者と一致するユーザーアカウントを見つけることができません。

ユーザーは、YouTrack と GitHub の両方のアカウントに同じメールアドレスを使用するか、GitHub プロファイルに名前として保存されている値を Hub アカウントの VCS ユーザー名のリストに追加する必要があります。

詳しくは、変更作成者と YouTrack ユーザーの一致を参照してください。

状態 — YouTrack と GitHubEnterprise サーバー間の接続を確立できません。次の原因のいずれかが存在するかどうかを確認します。

原因

ソリューション

外部サービスは利用できません。

GitHub Enterprise サーバーが起動していることを確認してください。

接続がファイアウォールによってブロックされています。

YouTrack と GitHub Enterprise サーバーが使用するファイアウォールのポートを開きます。

外部サービスへの接続がプロキシサーバーによってブロックされています。

間違ったポートで接続しようとしています。

YouTrack がプロキシサーバーを介して他のサービスに接続できるように、サーバーのシステムプロパティを設定します。手順については、プロキシ設定を参照してください。

GitHub Enterprise サーバーには安全な接続が必要です。

GitHub Enterprise サーバーの証明書を YouTrack にインポートします。手順については、SSL 証明書を参照してください。

GitHub Enterprise サーバーの SSL 証明書は期限切れです。

更新した証明書を更新して YouTrack にインポートします。手順については、SSL 証明書を参照してください。

関連ページ:

VCS コミットでのコマンドの適用

バージョン管理システムのコードリポジトリへの変更をコミットするときに、コマンドを課題に適用できます。YouTrack を開く必要すらありません。これらの変更を適用するには、特別な形式を使用して、コミットメッセージでコマンドを指定します。YouTrack でサポートされているコマンドの完全なリストについては、コマンドリファレンスを参照してください。コミットメッセージに課題へのリンクを追加する方法をすでに見たかもしれません。これはさらに一歩進んだものです。課題とバージョン管理システム間を移動するのに...

VCS の変更の表示と編集

アクティビティストリームには、現在の課題に関連する VCS 変更のリストが表示されます。これらのイベントは、VCS の変更フィルターが有効な場合に表示されます。この情報は、プロジェクトがバージョン管理システムと統合されている場合にのみ利用できます。YouTrack は、バージョン管理システムと直接統合することも、TeamCity や Jenkins などのバージョン管理に接続されている別のアプリケーションを通じて統合することもできます。統合の表示設定が 1 つ以上のグループに制限されている場合、...

VCS コミットのリンクの課題

ソフトウェア開発チームは、課題に応じてアプリケーションコードに変更を適用することがよくあります。これらの更新は通常、バージョン管理システム(VCS)に適用されます。コードを VCS リポジトリにコミットする場合、変更内容とその理由を説明するコミットメッセージを書き込むオプションがあります。YouTrack サーバーが VCS リポジトリと統合されている場合は、コミットメッセージまたはブランチ名で課題を参照できます。これらの参照は、リポジトリ、ビルド、YouTrack の課題へのコミットを指すリン...

GitHub と統合する

このページの指示に従って、github.com または自己ホスト GitHub Enterprise インストールでホストされている VCS リポジトリとプロジェクトを統合します。GitHub との統合により、YouTrack の以下の機能が有効になります。コミットメッセージの YouTrack 課題にコマンドを適用します。詳細については、VCS コミットでのコマンドの適用を参照してください。YouTrack で、課題のアクティビティストリーム内の特定の課題に関連するコミットを追跡します。詳しくは...

SSL 証明書

YouTrack を使用すると、外部サービスから信頼できる SSL 証明書をインポートできます。これらの証明書は外部サービスを信頼できる情報源として識別し、YouTrack とサードパーティサーバーの間に安全な接続を確立させます。キーストアを YouTrack にインポートすることもできます。キーストアは、YouTrack がサードパーティーに接続しようとしたときに YouTrack をクライアントとして識別します。キーストアは YouTrack の別のページで管理されています。詳しくは、SSL...

SSL キー

YouTrack では、SSL キーストアを YouTrack にインポートできます。キーストアは、公開鍵と秘密鍵のペア、それらが関連付けられている証明書のコンテナーです。キーストアは、サードパーティーへの接続を試行するときに、YouTrack をクライアントとして識別します。キーストアを使用して、サードパーティサービスの公開キーを(証明書の形式で)キャッシュすることもできます。外部サービスのキーと証明書を含むキーストアがある場合は、このページでアップロードできます。それ以外の場合は、SSL 証...