GitHub のコミット、pull request、および issue を Azure Boards の作業項目にリンクする

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

この記事では、Azure Boards プロジェクトを GitHub リポジトリに接続した後、作業項目を GitHub のコミットや pull request にリンクする方法について説明します。 #mention 構文を使用するか、Azure Boards 作業項目から直接 GitHub コミットまたは pull request リンクを追加できます。

Note

GitHub 用の Azure Boards アプリを使用することで、Azure Boards と Azure DevOps Services が GitHub.com および GitHub Enterprise Server リポジトリと統合されます。 Azure DevOps Server 2019 以降のバージョンは、GitHub Enterprise Server リポジトリとの統合のみをサポートしています。 他の Git リポジトリとの統合はサポートされていません。

前提条件

  • プロジェクトの接続:

    • Azure Boards プロジェクトがリンク先またはリンク元のコミットと pull request が存在する GitHub リポジトリに接続されていることを確認します。 詳細については、「Azure Boards - GitHub 統合」を参照してください。
  • アクセス許可:

    • Azure Boards プロジェクトと GitHub リポジトリの両方の共同作成者である必要があります。

Note

ホストされた XML プロセス モデルを使うプロジェクトでは、開発セクションと GitHub リンクの種類を表示する作業項目の種類を更新する必要があります。 詳細については、選択した作業項目の種類に対する XML 定義の更新に関する記事を参照してください。

GitHub のコミット、pull request、または issue から Azure Boards 作業項目へのリンクを作成するには、次の構文を使います。 コミット メッセージのテキスト内に AB#ID を入力します。 pull request または issue の場合は、タイトルまたは説明内に AB#ID を入力します。 コメント内で AB#ID を使用しても、作業項目へのリンクは作成されません。

Note

GitHub issue へのリンクには、Azure DevOps Server 2019 Update 1 以降のバージョンが必要です。

AB#{ID}

たとえば、AB#125 は作業項目 ID 125 にリンクします。

コミットまたは pull request メッセージを入力して、作業項目を切り替えることもできます。 fixfixesfixed が認識され、後続する # メンション項目に適用されます。 メンションされた作業項目は、"解決済み" ワークフロー カテゴリ状態に関連付けられた最初の状態に遷移します。 "解決済み" に関連付けられた状態がない場合は、"完了" ワークフロー カテゴリ状態に関連付けられた状態に作業項目が遷移します。 詳細については、「Azure Boards のバックログとボードでのワークフロー カテゴリの状態の使用方法」を参照してください。

例については、次の表を確認してください。

コミットまたは pull request メッセージ アクション
Fixed AB#123 "解決済み" ワークフロー状態カテゴリか、何も定義されていない場合は "完了" ワークフロー状態カテゴリに作業項目をリンクし、切り替えます。
Adds a new feature, fixes AB#123. "解決済み" ワークフロー状態カテゴリか、何も定義されていない場合は "完了" ワークフロー状態カテゴリに作業項目をリンクし、切り替えます。
Fixes AB#123, AB#124, and AB#126 Azure Boards 作業項目 123、124、126 へのリンク。 最初の項目 123 のみを "解決済み" ワークフロー状態カテゴリか、何も定義されていない場合は "完了" ワークフロー状態カテゴリに切り替えます。
Fixes AB#123, Fixes AB#124, Fixes AB#125 Azure Boards 作業項目 123、124、126 へのリンク。 すべての項目を "解決済み" ワークフロー状態カテゴリか、何も定義されていない場合は "完了" ワークフロー状態カテゴリのいずれかに切り替えます。
Fixing multiple bugs: issue #123 and user story AB#234 GitHub issue 123 と Azure Boards 作業項目 234 にリンクします。 切り替えは行われません。

Note

2 つ以上の Azure DevOps 組織に定義されているプロジェクトに同じ GitHub リポジトリを接続した場合、予期しない AB# メンション リンクになる可能性があります。 詳細については、「接続の問題を解決する」を参照してください。 このため、1 つの Azure DevOps 組織で定義されたプロジェクトにのみ GitHub リポジトリを接続することをお勧めします。

作業項目から GitHub ブランチを作成する

作業項目から GitHub ブランチを直接作成するには、以下の手順を実行します。

  1. ボードから、GitHub ブランチを作成する作業項目を見つけます。

  2. [作業項目のアクション]>[新しい GitHub ブランチ] を選択します。

    作業項目の [その他の操作] を選択し、[新しい GitHub ブランチ] オプションが強調表示されているスクリーンショット。

  3. [GitHub ブランチの作成] ダイアログで、ブランチ名を入力し、GitHub リポジトリとベース ブランチを選択します。

  4. [作成] を選択します

    [GitHub ブランチの作成] ダイアログのスクリーンショット。

    Azure Boards によって、指定した GitHub リポジトリにブランチが作成され、作業項目にリンクされます。 詳細については、「Azure Boards - GitHub 統合」を参照してください。

Note

GitHub issue へのリンクには、Azure DevOps Server 2019 Update 1 以降のバージョンが必要です。

  1. 作業項目を開き、[リンク] タブに移動します。

    作業項目フォーム、[リンク] タブの、issue へのリンクの追加のスクリーンショット。

  2. [リンクの追加] ダイアログから、GitHub リンクの種類のいずれかを選択し、GitHub リポジトリを選択し、GitHub ブランチ、コミット、または pull request の URL を入力して、[リンクの追加] を選択します

    次の例では、GitHub pull request へのリンクを追加します。

    作業項目フォーム、[リンク] タブ、[リンクの追加] ダイアログで、GitHub pull request のリンクの種類が選ばれているスクリーンショット。

    Azure Boards では、有効なリンクが入力されたかどうかの検査を完了します。 リンク先の GitHub リポジトリは Azure Boards プロジェクトに接続されている必要があります。そうでない場合、検証は失敗します。

Note

Azure DevOps Server と GitHub Enterprise Server を使用している場合、AB# リンクの完了に遅延が発生します。 Commit、PR、Issue の増分変更を 1 時間ごとに GitHub イベントからプルする「プッシュ アンド プル」設計が採用されています。

作業項目フォーム内の [開発] セクションには、GitHub のコミットと pull request に対して作成されたリンクが GitHub アイコンと共に一覧表示されます。

作業項目フォームで、[開発] セクションに GitHub のリンクが表示されているスクリーンショット。

表示されたリンクを選ぶと、GitHub のコミットか pull request が開きます。

ボード上で GitHub オブジェクトを表示する

ボードで GitHub アノテーションを有効にすると、リンクされた GitHub コミット、pull request、または issue をすばやく開いて詳細を確認できます。 詳細については、カードのカスタマイズに関するページを参照してください。

作業項目カードに GitHub リンクを表示するボードのスクリーンショット。

次のステップ