Skip to main content

Issue の作成

Issueは様々な方法で作成できるので、ワークフローで最も便利な方法を選択できます。

この機能を使用できるユーザーについて

People with read access can create an issue in a repository where issues are enabled.

Issue は、バグ、拡張、その他リクエストの追跡に使用できます。 詳しくは、「Issueについて」を参照してください。

リポジトリの管理者は、リポジトリのIssueを無効化できます。 詳しくは、「Issues を無効化する」を参照してください。

リポジトリからのIssueの作成

  1. GitHub で、リポジトリのメイン ページに移動します。

  2. リポジトリ名の下にある [イシュー] をクリックします。

    リポジトリのメイン ページのスクリーンショット。 水平ナビゲーション バーでは、[イシュー] というラベルが付いたタブが濃いオレンジ色の枠線で囲まれています。

  3. [New issue](新しい Issue) をクリックします。

  4. リポジトリで issue テンプレートを使っている場合は、開く種類の issue の横にある [作業の開始] をクリックします。

    開きたい種類の issue が利用可能なオプションにない場合は、 [空の issue を開く] をクリックします。

    issue のテンプレートの選択のスクリーンショット。 テンプレートの選択肢の下には、"空白の issue を開く" というラベルの付いたリンクが濃いオレンジ色の枠線で囲まれています。

  5. "タイトル" フィールドに issue のタイトルを入力します。

  6. コメント本文のフィールドに、issue の説明を入力します。

  7. プロジェクトのメンテナである場合、issue を他のユーザーに割り当てたりproject に追加したりマイルストーンに関連付けたりissue 型を設定したり、 またはラベルを適用したりできます。

  8. 完了したら、 [新しい issue の送信] をクリックします。

GitHub CLIでのIssueの作成

GitHub CLI は、コンピューターのコマンド ラインから GitHub を使用するためのオープン ソース ツールです。 コマンドラインから作業しているときは、GitHub CLI を使用して時間を節約し、コンテキストの切り替えを回避できます。GitHub CLI の詳細については、「GitHub CLI について」を参照してください。

issue を作成するには、gh issue create サブコマンドを使用します。 対話型プロンプトをスキップするには、--body フラグと --title フラグを含めます。

gh issue create --title "My new issue" --body "Here are more details."

アサインされる人、ラベル、マイルストーン、プロジェクトを指定することもできます。

gh issue create --title "My new issue" --body "Here are more details." --assignee @me,monalisa --label "bug,help wanted" --project onboarding --milestone "learning codebase"

コメントからのIssueの作成

IssueもしくはPull Requestのコメントから、新しいIssueをオープンできます。 コメントから開いたIssueには、コメントの元の投稿場所を示すスニペットが含まれています。

  1. Issueをオープンしたいコメントにアクセスしてください。

  2. そのコメントで、 をクリックしてください。

    pull request に対するコメントのスクリーンショット。 ケバブ ボタンが濃いオレンジ色の枠線で囲まれています。

  3. [新しい issue で参照] をクリックします。

  4. [リポジトリ] ドロップダウンメニューを使って、開こうとする issue が含まれているリポジトリを選んでください。

  5. Issueのわかりやすいタイトルと本文を入力します。

  6. [issue の作成] をクリックします。

  7. プロジェクトのメンテナである場合、issue を他のユーザーに割り当てたりproject に追加したりマイルストーンに関連付けたりissue 型を設定したり、 またはラベルを適用したりできます。

  8. 完了したら、 [新しい issue の送信] をクリックします。

コードからのIssueの作成

コードの特定の行または複数の行から、ファイルまたはプルリクエストで Issue を開くことができます。 コードから Issue を開くと、Issue には選択した行またはコードの範囲を示すスニペットが含まれています。 Issue を開くことができるのは、コードを保存したのと同じリポジトリでだけです。

  1. GitHub で、リポジトリのメイン ページに移動します。

  2. Issue で参照したいコードを探します。

    • ファイルのコードに関する Issue を開くには、そのファイルに移動します。
    • pull request でコードに関する issue を開くには、対象の pull request に移動して [変更されたファイル] をクリックしてください。 次に、コメントに取り込むコードが含まれているファイルを参照して、 [表示] をクリックします。
  3. 1 行または範囲のどちらを選ぶかを選びます。

    • コードを1行選択するには、行番号をクリックしてその行をハイライトしてください。
    • コードの範囲を選択するには、その範囲の先頭行の番号をクリックしてコードのその行をハイライトしてください。 そしてコードの範囲の最終行までポインタを移動させ、Shift を押し、行番号をクリックして範囲をハイライトします。
  4. コード範囲の左で をクリックしてください。 ドロップダウン メニューで、 [新しい issue で参照] をクリックしてください。

    8 行が選ばれているファイルのスクリーンショット。 選ばれている最初の行の左側には、ケバブ アイコンというラベルが付いたボタンが濃いオレンジ色の枠線で囲まれています。

  5. "タイトル" フィールドに issue のタイトルを入力します。

  6. コメント本文のフィールドに、issue の説明を入力します。

  7. プロジェクトのメンテナである場合、issue を他のユーザーに割り当てたりproject に追加したりマイルストーンに関連付けたりissue 型を設定したり、 またはラベルを適用したりできます。

  8. 完了したら、 [新しい issue の送信] をクリックします。

ディスカッションからのIssueの作成

リポジトリへのTriage権限を持つユーザは、ディスカッションからIssueを作成できます。

ディスカッションからIssueを作成する場合、ディスカッションの投稿の内容は自動的にIssueの本文に含められ、ラベルがあればそのまま残されます。 ディスカッションからIssueを作成しても、そのディスカッションがIssueに変換されたり、既存のディスカッションが削除されたりすることはありません。 GitHub Discussions の詳細については、「ディスカッションについて」を参照してください。

  1. リポジトリ名または Organization 名の下にある [ディスカッション] をクリックします。

    GitHub リポジトリのタブのスクリーンショット。 [ディスカッション] が濃いオレンジ色の枠線で囲まれています。

  2. ディスカッションのリストで、表示するディスカッションをクリックします。

  3. 右側のサイドバーで、 [ディスカッションから issue を作成する] をクリックしてください。

    ディスカッションのサイドバーのスクリーンショット。 [ディスカッションから issue を作成する] オプションが濃いオレンジ色の枠線で囲まれています。

  4. "タイトル" フィールドに issue のタイトルを入力します。

  5. コメント本文のフィールドに、issue の説明を入力します。

  6. プロジェクトのメンテナである場合、issue を他のユーザーに割り当てたりproject に追加したりマイルストーンに関連付けたりissue 型を設定したり、 またはラベルを適用したりできます。

  7. 完了したら、 [新しい issue の送信] をクリックします。

プロジェクトからの Issue の作成

プロジェクトから離れることなく、Issue をすばやく作成できます。 フィールドでグループ化されたビューを使用する場合、そのグループに Issue を作成すると、新しい Issue のフィールドがグループの値に自動的に設定されます。 たとえば、ビューを "Status" でグループ化した場合、"Todo" グループに Issue を作成すると、新しい Issue の "Status" は自動的に "Todo" に設定されます。プロジェクトの詳細については、「Projects について」を参照してください。

  1. プロジェクトにアクセスします。

  2. 表、項目のグループ、またはボード レイアウトの列の下部にある をクリックします。

    テーブル ビューの一番下の行のスクリーンショット。 "+" ボタンがオレンジ色の枠線で囲まれています。

  3. [新規 Issue の作成] をクリックします。

  4. [新規 Issue の作成] ダイアログの上部で、新しい Issue を作成するリポジトリを選びます。

    [新規 issue の作成] ダイアログのスクリーンショット。

  5. リポジトリのドロップダウンの下に、新しい Issue のタイトルを入力します。

  6. 必要に応じて、タイトル フィールドの下のフィールドを使用して、担当者、ラベル、マイルストーンを設定し、新しい Issue を他のプロジェクトに追加します。

  7. 必要に応じて、Issue の説明を入力します。

  8. 必要に応じて、さらに Issue を作成する場合は、 [さらに作成] を選ぶと、Issue の作成時にダイアログがもう一度開きます。

  9. [作成] をクリックします。

タスクリストのアイテムからのIssueの作成

Issue内で、タスクリストを使って作業を小さなタスクに分割し、作業全体を完了するまで追跡できます。 さらなる追跡あるいはディスカッションがタスクに必要な場合、そのタスクにマウスを移動させ、タスクの右上のをクリックし、Issueに変換できます。 詳しくは、「タスクリストについて」を参照してください。

URLクエリからのIssueの作成

Issueをオープンするのにクエリパラメータを利用できます。 クエリパラメータはカスタマイズ可能なURLのオプション部分で、GitHub上の検索フィルタの結果やIssueテンプレートといった特定のWebページビューを共有できます。 独自のクエリパラメータを作成するには、キーと値のペアをマッチさせなければなりません。

ヒント: 既定のラベル、担当者、issue タイトルを使用して開く issue テンプレートを作成することもできます。 詳しくは、「テンプレートを使用して便利な Issue やプルリクエストを推進する」を参照してください。

クエリパラメータを使うには、同等のアクションを行うための適切な権限を持っていなければなりません。 たとえば、labels クエリ パラメーターを使うには、issue にラベルを追加するアクセス許可を持っている必要があります。 詳しくは、「Organizationのリポジトリロール」を参照してください。

クエリ パラメーターを使用して無効な URL を作成した場合、または適切なアクセス許可を持っていない場合は、URL から 404 Not Found エラー ページが返されます。 サーバーの制限を超える URL を作成すると、URL から 414 URI Too Long エラー ページが返されます。

Query parameter (クエリ パラメーター)
titlehttps://github.com/octo-org/octo-repo/issues/new?labels=bug&title=New+bug+report では、ラベル "bug" とタイトル "New bug report" で issue が作成されます。
bodyhttps://github.com/octo-org/octo-repo/issues/new?title=New+bug+report&body=Describe+the+problem. では、タイトルが "New bug report" で、issue 本文に "Describe the problem" というコメントが含まれる、issue が作成されます。
labelshttps://github.com/octo-org/octo-repo/issues/new?labels=help+wanted,bug では、"help wanted" と "bug" というラベルを持つ issue が作成されます。
milestonehttps://github.com/octo-org/octo-repo/issues/new?milestone=testing+milestones では、"testing milestones" というマイルストーンで issue が作成されます。
assigneeshttps://github.com/octo-org/octo-repo/issues/new?assignees=octocat では、issue が作成されて、@octocat に割り当てられます。
projectshttps://github.com/octo-org/octo-repo/issues/new?title=Bug+fix&projects=octo-org/1 では、"Bug fix" というタイトルの issue が作成されて、組織のプロジェクト 1 に追加されます。
templatehttps://github.com/octo-org/octo-repo/issues/new?template=issue_template.md では、issue 本文にテンプレートが含まれる issue が作成されます。 template クエリ パラメーターは、リポジトリのルート、docs/、または .github/ ディレクトリ内の ISSUE_TEMPLATE サブディレクトリに格納されているテンプレートで動作します。 詳しくは、「テンプレートを使用して便利な Issue やプルリクエストを推進する」を参照してください。

URL クエリ パラメーターを使用し、Issue フォーム テンプレートで定義しているカスタム テキスト フィールドに入力することもできます。 イシュー フォーム フィールドのクエリ パラメーターは、イシュー テンプレート選択画面に渡すこともできます。 詳しくは、「GitHub のフォームスキーマの構文」を参照してください。

code scanningアラートからのIssueの作成

注: Issue の code scanning アラートの追跡は パブリック プレビュー であり、変更される可能性があります。

この機能では、GitHub Actions を使用してネイティブで、または既存の CI/CD インフラストラクチャを使用して外部で分析を実行すること、およびサードパーティの code scanning ツールがサポートされていますが、サードパーティの追跡ツールはサポート されていません

issue を使用して作業の追跡と優先順位付けを行っている場合は、issue を使用して code scanning アラートを追跡できます。 code scanning アラートを追跡するための issue の作成については、「[AUTOTITLE](/code-security/code-scanning/managing-code-scanning-alerts/tracking-code-scanning-alerts-in-issues-using-task-lists)」を参照してください。

参考資料