リポジトリ用に Issue テンプレートを設定する

コントリビューターがリポジトリで新しい Issue を開くときに使用できるテンプレートをカスタマイズできます。

デフォルトのIssueテンプレートとIssueテンプレートのためのデフォルトの設定ファイルを、Organizationもしくはユーザアカウント用に作成できます。 詳しい情報については「デフォルトのコミュニティ健全性ファイルを作成する」を参照してください。

Issue テンプレートを作成する

  1. GitHubで、リポジトリのメインページにアクセスしてください。
  2. リポジトリ名の下で Settings(設定)をクリックしてください。 リポジトリの設定ボタン
  3. [Features] セクションの [Issues] の下で、[Set up templates] をクリックします。 [Start template setup] ボタン
  4. [Add template] ドロップダウンメニューで、作成するテンプレートの種類をクリックします。 [Add template] ドロップダウンメニュー
  5. テンプレートをリポジトリにコミットする前にプレビューまたは編集するには、[Preview and edit] をクリックします。 [Preview and edit] ボタン
  6. テンプレートを編集するには、 をクリックし、フィールドに入力してコンテンツを編集します。 [Issue template edit] ボタン
  7. デフォルトの Issue タイトルを自動的に設定するには、リポジトリへの読み取りアクセスを持つ人に Issue を割り当てるか、ラベルを Issue テンプレートに適用し、こうした詳細な情報を [Optional additional information] の下に入力します。 このような詳細情報を Issue テンプレートに、titlelabels、または assignees を YAML frontmatter フォーマットで使用して、追加することもできます。 Issue テンプレートの追加情報
  8. テンプレートの編集とプレビューが終了したら、ページ右上隅にある [Propose changes] をクリックします。 [Propose changes] ボタン
  9. 変更内容を説明するコミットメッセージを入力します。 Issue テンプレートコミットメッセージフィールド
  10. コミットメッセージフィールドの下で、テンプレートを直接デフォルトブランチにコミットするか、新しいブランチを作成してプルリクエストを開くか判断します。 プルリクエストに関する詳しい情報については「プルリクエストについて」を参照してください。 Issue テンプレートの main へのコミットかプルリクエストを開くかの選択
  11. [Commit changes] をクリックしてください。 変更がデフォルトブランチにマージされると、コントリビューターがリポジトリで新しい Issue を開くときにテンプレートを使用できるようになります。

Issue フォームを作成する

ノート: Issue formsは現在ベータで、変更されることがあります。

Issue フォームを使用すると、カスタマイズ可能な Web フォームフィールドを持つ Issue テンプレートを作成できます。 リポジトリ内の Issue フォームを使用して、コントリビューターに特定の構造化された情報を含めるように促すことができます。 Issue フォームは、GitHub フォームスキーマを使用して YAML で記述されます。 詳しい情報については、「GitHub のフォームスキーマの構文」を参照してください。 YAMLについて詳しくなく、学んでいきたい場合は、「Learn YAML in five minutes (Y分で学ぶYAML)」をお読みください。

リポジトリで Issue フォームを使用するには、新しいファイルを作成して、リポジトリの .github/ISSUE_TEMPLATE フォルダに追加する必要があります。

Issue フォームの設定ファイルの例を次に示します。

YAML
name: Bug Report
description: File a bug report
title: "[Bug]: "
labels: ["bug", "triage"]
assignees:
  - octocat
body:
  - type: markdown
    attributes:
      value: |
        Thanks for taking the time to fill out this bug report!
  - type: input
    id: contact
    attributes:
      label: Contact Details
      description: さらに情報が必要な場合、どのように連絡すればよいでしょうか?
      placeholder: ex. email@example.com
    validations:
      required: false
  - type: textarea
    id: what-happened
    attributes:
      label: What happened?
      description: また、生じると期待されていたことは何でしょうか?
      placeholder: Tell us what you see!
      value: "バグが生じました!"
    validations:
      required: true
  - type: dropdown
    id: version
    attributes:
      label: Version
      description: 実行していたソフトウェアのバージョンは?
      options:
        - 1.0.2 (Default)
        - 1.0.3 (Edge)
    validations:
      required: true
  - type: dropdown
    id: browsers
    attributes:
      label: What browsers are you seeing the problem on?
      multiple: true
      options:
        - Firefox
        - Chrome
        - Safari
        - Microsoft Edge
  - type: textarea
    id: logs
    attributes:
      label: Relevant log output
      description: 関連するログの出力をコピーしてペーストしてください。 これは自動的にコードにフォーマットされるので、バックティックは不要です。
      render: shell
  - type: checkboxes
    id: terms
    attributes:
      label: Code of Conduct
      description: このIssueをサブミットすることで、あなたは私たちの [行動規範](https://example.com)に同意したことになります。
      options:
        - label: I agree to follow this project's Code of Conduct
          required: true

Issueフォームのレンダリングバージョンは次のとおりです。 レンダリングされた Issue フォーム

  1. Issue フォームを作成するリポジトリを選択します。 書き込みアクセス権を持つ既存のリポジトリを利用することも、新しいリポジトリを作成することもできます。 リポジトリの作成に関する詳細は「新しいリポジトリの作成」を参照してください。
  2. リポジトリに .github/ISSUE_TEMPLATE/FORM-NAME.yml というファイルを作成し、FORM-NAME を Issue フォームの名前に置き換えます。 GitHub上での新しいファイルの作成に関する詳しい情報については「新しいファイルの作成」を参照してください。
  3. 新しいファイルの本文に、Issue フォームの内容を入力します。 詳しい情報については、「Issue フォームの構文」を参照してください。
  4. ファイルをリポジトリのデフォルトブランチにコミットします。 詳細は「新しいファイルを作成する」を参照してください。

テンプレート選択画面を設定する

リポジトリで新しいIssueを作成する時に表示されるIssueテンプレートの選択画面は、.github/ISSUE_TEMPLATEフォルダーにconfig.ymlファイルを追加することによってカスタマイズできます。

blank_issues_enabledfalse に設定すると、コントリビューターに Issue テンプレートの使用を促すことができます。 blank_issues_enabledtrue に設定すると、空白の Issue を開くこともできます。

Note: If you used the legacy workflow to manually create an issue_template.md file in the .github folder and enable blank issues in your config.yml file, the template in issue_template.md will be used when people chose to open a blank issue. 空白の Issue を無効にすると、テンプレートは使用されません。

GitHub外で特定のレポートを受信する場合は、contact_links を使用して外部サイトにユーザを誘導できます。

config.yml ファイルの例は次のとおりです。

blank_issues_enabled: false
contact_links:
  - name: GitHub Community Support
    url: https://github.community/
    about: Please ask and answer questions here.
  - name: GitHub Security Bug Bounty
    url: https://bounty.github.com/
    about: Please report security vulnerabilities here.

設定ファイルでは、ファイルがリポジトリのデフォルトブランチにマージされるときにテンプレート選択画面をカスタマイズします。

  1. GitHubで、リポジトリのメインページにアクセスしてください。
  2. ファイルのリストの上で、Add file(ファイルの追加)ドロップダウンを使い、Create new file(新規ファイルの作成をクリックしてください。 "ファイルの追加"ドロップダウン内の"新規ファイル作成"
  3. ファイル名フィールドに .github/ISSUE_TEMPLATE/config.yml と入力します。 ファイル名の設定
  4. 新しいファイルの本文に、設定ファイルのコンテンツを入力します。 ファイルコンテンツの設定
  5. ページの下部で、ファイルに対して行った変更を説明する短く分かりやすいコミットメッセージを入力してください。 コミットメッセージでは、複数の作者にコミットを関連づけることができます。 詳しい情報については「複数の共作者を持つコミットの作成」を参照してください。 変更のコミットメッセージ
  6. コミットメッセージフィールドの下で、コミットを追加を現在のブランチか新しいブランチから選択してください。 現在のブランチがデフォルトブランチなら、コミット用に新しいブランチを作成してからPull Requestを作成すべきです。 詳しい情報については「新しいプルリクエストの作成」を参照してください。 コミットブランチのオプション
  7. Propose new file(新規ファイルの提案)をクリックしてください。 新規ファイルの提案ボタン

参考リンク

このドキュメントは役立ちましたか?

プライバシーポリシー

これらのドキュメントを素晴らしいものにするのを手伝ってください!

GitHubのすべてのドキュメントはオープンソースです。間違っていたり、はっきりしないところがありましたか?Pull Requestをお送りください。

コントリビューションを行う

OR, コントリビューションの方法を学んでください。

問題がまだ解決していませんか?