次の方法で共有


GitHub のコミット、プル要求、ブランチ、および問題を Azure Boards の作業項目にリンクする

Azure DevOps Services |Azure DevOps Server 2022 |Azure DevOps Server 2020

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

Note

GitHub 統合のサポート:

  • Azure DevOps Services: GitHub 用 Azure Boards アプリを使用して、GitHub.com および GitHub Enterprise Server リポジトリの両方と統合します。
  • Azure DevOps Server 2020 以降: GitHub Enterprise Server リポジトリとの統合のみをサポートします。
  • その他の Git リポジトリ: 統合はサポートされていません。

Prerequisites

Category Requirements
Permissions Azure Boards プロジェクトと GitHub リポジトリの両方に共同作成者
Project connection リンク先またはリンク元のコミット、pull request、ブランチが存在する GitHub リポジトリに Azure Boards プロジェクトが接続されていること。 詳細については、 Azure Boards-GitHub 統合に関するページを参照してください。

Note

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

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

AB#{ID}

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

コミットまたは pull request メッセージを入力して、作業項目を切り替えることもできます。 システムは、 {state} または {state category}fixfixesfixedと共に認識し、次の #メンション項目に適用します。

プル要求の説明に有効な状態名 ( Closed AB#1234など) が含まれている場合、システムは参照先の作業項目をその特定の状態に更新します。 状態名が直接認識されない場合、Azure Boards は、 ResolvedCompletedなどのワークフロー カテゴリとの照合を試みます。 一致するものが見つかった場合、作業項目は、そのカテゴリで定義されている最初の使用可能な状態に遷移します。

既定では、fixfixes、またはfixedで参照される作業項目は、解決済みカテゴリに関連付けられている最初の状態に遷移します。 現在のプロセスにこのような状態が存在しない場合は、代わりに作業項目が 完了 カテゴリの最初の状態に遷移します。

Important

作業項目をリンクして他のブランチをターゲットにすることはできますが、プル要求が既定のブランチにマージされない限り、状態遷移ルールは適用されません。

詳細については、「 Azure Boards のバックログとボードでワークフロー カテゴリの状態を使用する方法」を参照してください。

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

コミットまたは pull request メッセージ Action
Fixed AB#123 "解決済み" ワークフロー状態カテゴリか、何も定義されていない場合は "完了" ワークフロー状態カテゴリに作業項目をリンクし、切り替えます。
Closed 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

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

AB# を使用して作業項目へのリンクを追加すると、それらのリンクが pull request の [開発 ] セクションに表示されます。

GitHub pull request の開発セクションにある AB# リンクのスクリーンショット。

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

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

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

  2. ワーク項目アクション>新しいGitHubブランチを選択します。

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

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

  4. Select Create.

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

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

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

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

  2. [ リンクの追加 ] ダイアログで、 いずれかの GitHub リンクの種類を選択し、GitHub リポジトリを選択し、GitHub ブランチへの 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 イベントからプルする「プッシュ アンド プル」設計が採用されています。

複数のイベントによって作業項目フォームのリンクが自動的に更新されるため、手動で作成する必要はありません。 These include:

GitHub event Action
ブランチへのリンク ブランチからプル要求が作成されると、作業項目に自動的にリンクされます。
Merge commit pull request がマージされると、結果のマージ コミットは作業項目に自動的にリンクされます。
Delete branch ブランチが削除された場合 (通常はマージ後)、そのリンクは作業項目から自動的に削除されます。

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

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

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

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

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

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

Next steps