はじめに
このガイドは、GitHub Issuesを使って作業の断片を計画及び追跡する方法を示します。 このガイドでは、新しい issue を作成し、それを sub-issue に分割します。 また、ラベル、issue の種類、マイルストーン、担当者、プロジェクトを追加して、issue に関するメタデータを伝える方法についても説明します。
前提条件
Issueを作成するにはリポジトリが必要です。 書き込みアクセス権を持つ既存のリポジトリを利用することも、新しいリポジトリを作成することもできます。 マネージド ユーザーを含む Enterprise のメンバーは、エンタープライズの一部であるリポジトリでのみ変更を行うことができます。 リポジトリはIssueを有効化していなければなりません。 リポジトリの作成について詳しくは、「新しいリポジトリの作成」をご覧ください。 リポジトリで無効になっている issue の有効化の詳細については、「問題を無効化する」を参照してください。
空のIssueを開く
まず、イシューを作成してください。 Issueの作成方法は複数あります。自分のワークフローで最も便利な方法を選択できます。 この例では、GitHub UIを使用します。 Issue を作成するその他の方法の詳細については、「課題の作成」を参照してください。
-
GitHub で、リポジトリのメイン ページに移動します。1. リポジトリ名の下にある [Issues] をクリックします。
1. [New issue](新しい Issue) をクリックします。![リポジトリのメイン ページのスクリーンショット。 水平ナビゲーション バーでは、[イシュー] というラベルが付いたタブが濃いオレンジ色の枠線で囲まれています。](/assets/cb-51267/images/help/repository/repo-tabs-issues-global-nav-update.png)
-
この例では、空の課題から始めます。 リポジトリでは、コントリビューターが特定の情報を提供することを促進するために Issue テンプレートおよび Issue フォームが使用される場合があります。 リポジトリで Issue テンプレートを使っている場合、 [空の Issue を開く] をクリックします。
情報の記入
Issueに分かりやすいタイトルを付けてください。 このタイトルは、Issueが何に関するものなのかが一目でわかるものにすべきです。
Issueを解決するのに役立つかもしれない詳細情報も含めて、Issueの目的を記述する説明を追加してください。 たとえば、もしそれがバグレポートなら、バグを再現するステップ、期待される結果、実際の結果を記述してください。
フォーマット、リンク、絵文字などを追加するためにMarkdownを使うことができます。 詳しくは、「GitHub での執筆」をご覧ください。

タスクリストの追加
プレーンテキストを使って、対応する issue がないタスクを追跡し、後で issue に変換することもできます。 詳しくは、「タスクリストについて」をご覧ください。

問題の割り当て
責任を伝達するために、課題を組織のメンバーに割り当てることができます。 「他のGitHub ユーザーに問題とプル要求を割り当てる」を参照してください。
![新しい issue フォームのスクリーンショット。 右側のサイドバーで、[担当者] セクションが濃いオレンジの枠線で囲まれています。](/assets/cb-121639/images/help/issues/issue-assignees.png)
ラベルの追加
問題を分類するためにラベルを追加する。 たとえば、question ラベルと good first issue ラベルを使って、その課題が初めての共同作成者でも取り組みやすい質問であることを示します。 ユーザは、ラベルを使ってIssueをフィルタリングし、特定のラベルを持つすべてのIssueを見つけることができます。
デフォルトのラベルを使うことも、新しいラベルを作成することもできます。 詳しくは、「ラベルを管理する」をご覧ください。
![新しい issue フォームのスクリーンショット。 右側のサイドバーで、[ラベル] セクションが濃いオレンジの枠線で囲まれています。](/assets/cb-116676/images/help/issues/issue-with-label.png)
課題種類の追加
Issue の種類を追加して、organization 全体で作業を分類できます。 「組織での課題の種類の管理」を参照してください。
![新しい issue フォームのスクリーンショット。 右側のサイドバーでは、[Type] セクションが濃いオレンジ色で囲まれています。](/assets/cb-131184/images/help/issues/issue-type.png)
プロジェクトへの課題の追加
Issue を既存のプロジェクトに追加して、そのプロジェクトのメタデータを設定できます。 プロジェクトの詳細については、「Projects の について」を参照してください。
![新しい issue フォームのスクリーンショット。 右側のサイドバーで、[プロジェクト] セクションが濃いオレンジの枠線で囲まれています。](/assets/cb-122140/images/help/issues/issue-project.png)
マイルストーンの追加
日付ベースのターゲットの一部として課題を追跡するために、マイルストーンを追加できます。 マイルストーンは、目標日が近づくにつれて issue の進行状況を示します。 「マイルストーンについて」を参照してください。
![新しい issue フォームのスクリーンショット。 右側のサイドバーで、[マイルストーン] セクションが濃いオレンジの枠線で囲まれています。](/assets/cb-119294/images/help/issues/issue-milestone.png)
問題を提出する
**[新しい Issue をサブミット]** をクリックして、Issue を作成します。 上記のフィールドは、いずれもIssueを作成した後に編集できます。 Issueは一意のURLを持ち、それをTeamのメンバーと共有したり、あるいは他のIssueやPull Request内で参照したりできます。
サブイシューの追加
Issue に sub-issue を追加することで、大きな作業を小さな issue にすばやく分割することができます。 sub-issue により、issue 間の関係が作成されて、GitHub での issue の階層のサポートが追加されます。 ユーザーやチームが必要とする詳細さにタスクを分割することでプロジェクトを正確に表す sub-issue の複数のレベルを作成することができます。 「サブイシューの追加」および「サブ問題の閲覧」を参照してください。

課題の依存関係の追加
課題の依存関係を使って、課題間のブロックする関係を定義できます。 Issue の依存関係を利用して、他の作業によってブロックされている Issue または他の作業をブロックしている Issue を特定できます。 「課題の依存関係の作成」を参照してください。
コミュニケーション
Issueを作成した後は、そのIssueにコメントを追加して会話を続けてください。 コラボレーターやチームを@mentionして、コメントに注目してもらうことができます。 関連する課題を同じリポジトリ内でリンクするためには、# を入力した後、課題タイトルの一部を続けて入力し、リンクしたい課題をクリックします。 詳しくは、「GitHub での執筆」をご覧ください。

次の手順
Issueは、幅広い目的で使用できます。 たとえば次のような点です。
- アイデアの追跡
- フィードバックの収集
- タスクの計画
- バグの報告
issue をより管理しやすいタスクに分割するには、複数のレベルの sub-issue を追加できます。 「サブイシューの追加」を参照してください。
GitHub Issues で次のステップを実行するための役立つリソースを、いくつか次に示します。
- 課題の詳細を知るには、「問題について」を参照してください。
- GitHub の計画および追跡ツールの使用に関する基本事項については、「チームまたはプロジェクトの作業の計画と管理」を参照してください。
- プロジェクトが計画と追跡にどのように役立つかの詳細については、「Projects について学習する」を参照してください。
- Issue テンプレートや issue フォームを使って共同作成者からの特定の情報の提供を促進する方法の詳細については、「テンプレートを使用して便利な Issue やプルリクエストを促進する」を参照してください。