機能

プル・リクエスト

IDE内から直接プル・リクエストとPR説明を生成します。Bobは変更を分析し、詳細な説明を作成し、ワークフローを効率化します。

この機能を使用する理由

  • 時間を節約: 変更に基づいて詳細なPR説明を自動的に生成します。
  • 一貫性を維持: すべてのPRが一貫した形式に従うことを保証します。
  • コラボレーションを改善: 適切に構造化された説明でレビュアーに明確なコンテキストを提供します。
  • ワークフローを効率化: IDEを離れることなくPRを作成します。

仕組み

Bobはブランチの変更、コミット履歴、ブランチ名を分析して、作業の目的と範囲を理解します。次に、変更を要約する意味のあるPRタイトルと詳細な説明を生成し、レビュアーがPRのコンテキストと目的を理解しやすくします。生成後、提出前にPR説明をレビューして編集できます。

PR生成プロセスはインタラクティブで、PRを作成する前にターゲット・ブランチとリモート・リポジトリーを選択できます。

はじめに

前提条件

  • 変更はブランチにコミットされている必要があります。
  • リモート・リポジトリーへのプッシュ・アクセスが必要です。

基本的な使用方法

PRフローを開始するには3つのオプションから選択できます:

  • ソース管理パネルのPRアイコンをクリックします。
  • コマンド パレット(MacではCmd + Shift + P、Windows/LinuxではCtrl + Shift + P)を使用して「IBM Bob: Create Pull Request」を検索します。
  • Bobチャット・インターフェースで/create-prと入力します。

Bobは次のステップをガイドします:

  1. マージ先のベース・ブランチを選択します。Bobは最も可能性の高い3つのブランチを提案します。
  2. 複数のリモートがある場合は、リモート・リポジトリーを選択します。
  3. 生成されたPR説明とタイトルをレビューします。
  4. PRを作成します。
  5. チャットで新しく作成されたPRへのリンクを取得します。

PR説明テンプレートの使用

Bobは、プル・リクエスト説明を生成する際に、プロジェクトの既存のPRテンプレートを自動的に認識して使用します。これにより、PRがチームの確立された標準と一貫性を保つことが保証されます。Bobがプロジェクトで複数のPRテンプレートを検出した場合、プル・リクエストに適用するテンプレートを選択できます。

テンプレート検出

Bobは、プロジェクト・ルートからの相対的な以下の場所でPRテンプレートを検索します:

  1. ${cwd}/pull_request_template.md
  2. ${cwd}/docs/pull_request_template.md
  3. ${cwd}/.github/pull_request_template.md
  4. ${cwd}/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md
  5. ${cwd}/PULL_REQUEST_TEMPLATE/pull_request_template.md
  6. ${cwd}/docs/PULL_REQUEST_TEMPLATE/pull_request_template.md

Bobが複数のテンプレートを見つけた場合、BobはユーザーにどのテンプレートをPR説明に使用するかを選択するよう求めます。

デフォルト・テンプレート

プロジェクトでテンプレートが見つからない場合、Bobは以下を含む組み込みテンプレートを使用します:

  • ブランチ名から派生した説明的なタイトル
  • 変更の要約
  • 重要な実装の詳細
  • テスト情報
  • 関連するリンクまたは参照

生成された説明の編集

PR説明を生成すると、Bobはそれをチャット内に直接表示します。その後、以下のことができます:

  • 確認して続行: PR作成を進めるために、説明をそのまま承認します。
  • 変更をリクエスト: チャットでフィードバックを入力すると、Bobが入力内容に基づいて説明を再生成します。確認する前に何度でも繰り返すことができます。

テンプレートのカスタマイズ

BobのPR生成で最良の結果を得るには:

  • テンプレートで明確なセクション見出しを使用します(例:## 要約## 変更
  • コンテキストを提供するプレースホルダー・テキストを含めます(例:<!-- このPRの目的を説明してください -->
  • テスト手順と関連する問題のセクションを追加することを検討します

ヒントとベスト・プラクティス

  • Bobがより正確なPR説明を生成するのに役立つ説明的なブランチ名を使用します。
  • PRを作成する前に生成された説明をレビューして編集します。
このトピックはいかがですか?