🚩

GitHubのissueについて

2024/07/15に公開

GitHubのissueについて

GitHubのissueについてはリポジトリをオープンにしていてもなかなか書いてもらえません。
1年に数回通知が突然飛んでくると、すごくうれしいです。

「Positive UEFN Utility」をOSS開発にしたいと考えた一番の理由としては、「issueを書く文化が浸透して欲しい」からです。
開発者一人が大変な思いをするのではなく、利用者もソースコードを書かなくてもいいので、開発に参加できるような活動にしたいです。

issueを書く機会に恵まれてきていなかったので、issueについて理解を深めていきたいです。

https://docs.github.com/ja/issues

https://docs.github.com/ja/issues/tracking-your-work-with-issues/about-issues

GitHub公式の「Issueについて」では以下のように説明されています。

GitHub Issues は、作業を計画、議論、追跡するためにリポジトリで作成できる項目です。

「ChatGPT」について質問したところ以下のような回答が得られました。


GitHubのIssue(イシュー)は、プロジェクト管理やバグ追跡のためのツールです。以下に、初心者向けに分かりやすく説明します。

●GitHubのIssueとは?
Issueは、プロジェクトに関連するタスク、バグ、機能追加のリクエストなどを記録するためのものです。これにより、開発チームが効率的に作業を進めることができます。

【主な機能】

  1. 作成: 任意のプロジェクトに対して新しいIssueを作成できます。例えば、バグを見つけた場合や新しい機能を提案したい場合に使用します。
  2. コメント: Issueにはコメントを追加できます。これにより、チームメンバーがディスカッションを行い、問題の解決方法や進行状況について意見を交換できます。
  3. ラベル: Issueにラベルを付けることで、カテゴリや重要度を指定できます。例えば、「バグ」「機能リクエスト」「高優先度」などのラベルを使うことで、どのような種類のIssueかを一目で把握できます。
  4. アサイン: 特定のメンバーにIssueを割り当てることができます。これにより、誰がそのIssueに対処するのかを明確にすることができます。
    ステータス管理: Issueは「オープン(未解決)」から「クローズ(解決済み)」まで、進行状況を管理できます。

触り始めるまでは「バグチケット」のように問題が発生したら書くもののように考えていましたが、柔軟な使用用途として使用されます。

  • 新機能のリクエスト
  • バグチケット
  • 議論・質問
  • 誤字脱字報告
  • etc...

issueを作成する

issueを作成する手順です。

https://docs.github.com/ja/issues/tracking-your-work-with-issues/creating-an-issue

リポジトリの「Issues」をクリックし、「New issue」をクリックします。

「タイトル」と「説明」を記入します。

項目 説明
Add a title 一覧に表示されるタイトル
Add a description タイトルを説明するための内容

「Labels」にはissueをカテゴリ分けするLabelを設定します。
「Labels」の右側の「⚙」をクリックし、内容に適した「Label」を選択します。
この記事のサンプル例では「新機能リクエスト」を選択します。

設定するLabelについては以下の記事を参考にしてください。

https://zenn.dev/posita33/articles/github_about_label

「Assignees」にはissueの担当者を割り当てます。
プロジェクト内同士で、誰に割り当てるのか分かっている場合は「Assigneers」を設定します。
分からない場合は、設定しなくてもissueを作成できるので、無理に設定しなくても大丈夫です。
今回の例では1人しか割り当てられないので、自分自身を割り当てます。

https://docs.github.com/ja/issues/tracking-your-work-with-issues/assigning-issues-and-pull-requests-to-other-github-users

「Submit new issue」をクリックします。

issueが作成されると、以下のような画像の状態になります。

「Issues」の一覧に作成したissueが表示されます。

issueからBranchを切る

issueと関連付けたBranchを作成できる方法が公式ドキュメントに書かれていたので設定してみます。

https://docs.github.com/ja/issues/tracking-your-work-with-issues/creating-a-branch-for-an-issue

Branchを作成したいissueのページに移動します。
右側の「Development」の項目に書かれている「Create a branch」のリンクをクリックします。

Branchを作成するためのダイアログが表示されます。
どのBranchから新しくBranchが切られるのか分からなかったので、「Change Branch」でSourceとなるBranchを確認します。

Branchを作成する設定ができたら「Create branch」をクリックします。

項目 設定する値
Branch name issueのタイトルがそのまま使われるので、Branch名を設定する
Repository destination Branchを作成するRepositoryを選択する
Branch source Branchを作成するBranchを選択する
What's next Branchを作成した後の動作を選択する

Branchが作成されます。
Git Client(GitHub Desktop)側にも作成したBranchが表示され、切り替えられるようになります。

コミットメッセージとissueを関連付ける

コミットメッセージに「#」を入力するとissueのリストが表示されます。
issue番号を含めたコミットメッセージを入力してコミット&プッシュを行います。

#(issue番号) コミットメッセージ

issueのページを確認すると、コミットメッセージがissueに関連付けられます。
issueがどのコミットに関連しているか追うことができます。

参照URL

https://docs.github.com/ja/issues/tracking-your-work-with-issues/about-issues

https://docs.github.com/ja/issues/tracking-your-work-with-issues/creating-a-branch-for-an-issue

https://docs.github.com/ja/issues/tracking-your-work-with-issues/assigning-issues-and-pull-requests-to-other-github-users

Discussion