GitHubのSub-Issues機能(Public Preview)を試す

GitHubのSub-Issues機能(Public Preview)を試す

Clock Icon2024.10.03

大阪オフィスの小倉です。

以下のブログでGitHubの新機能についてPublic Previewの案内があったので、早速Waitlistに登録してみました。
https://github.blog/changelog/2024-10-01-evolving-github-issues-public-preview/

  • Waitlistへの登録はGitHub Organization単位となっています
  • Waitlistへの登録はこちらから可能です

複数の機能がPublic Previewの対象となっていたのですが、その中でも特に私が欲しかったSub-Issues機能について確認した内容を紹介します。

Sub-Issues機能

その名の如く、Issueに親子関係を作成することができます。
類似の機能としてTasklistという機能(ベータ版)がありますが、現在は利用リクエストできなくなっているため、当時リクエストし損ねた私には、今回のSub-Issuesは待望の機能でした。

Sub-Issueの作成

Issue画面の「Create sub-issue」から子Issueを作成できます。
sub-issue-01.png

子Issueが登録された親Issueには、子Issueの進捗状況が表示されます。
sub-issue-02.png

子Issueの作成時に「Add existing issue」を選択すると、既存のIssueを子Issueとして紐づけることができます。
この時、別のRepositoryのIssueも子Issueとして設定できます。(別のRepositoryを選ぶ場合は「←」を選択します)
sub-issues-03.png

親Issueに対して最大50個の子Issueが設定可能、また階層は最大8階層まで作成できるようです。
9階層目のIssue作成はエラーとなりました。
sub-issue-04.png

Sub-Issueのフィルタ

Issue一覧画面でのSub-Issueに関するフィルタリングには、parent-issue, sub-issueのキーワードが利用できます。

sub-issue-05.png

以下はparent-issueを使った検索例ですが、sub-issueの場合も同様に検索できます。

検索例 フィルタ式
任意のIssueを親に持つIssue parent-issue:<owner>/<repo>#<number>
任意のIssueを親に持たないIssue -parent-issue:<owner>/<repo>#<number>
親Issueを持たないIssue no:parent-issue

GitHub Projectでの参照

GitHub Projectで親または子Issueを持つIssueをアイテムとして登録した場合に、Parent issue, Sub-issues progress のフィールドが用意されています。
(これが公式にずっと欲しかった・・・!)
sub-issue-06.png

GitHub Projectsでのフィルタ

Issue一覧画面と同様、parent-issueのキーワードが使える他、sub-issues-progressキーワードが利用できます。
sub-issue-07.png

検索例 フィルタ式
Sub-issues progressを持つ(=子Issueを持つ)Issue has:sub-issues-progress
Sub-issues progressを持たない(=Issueを持たない)Issue no:sub-issues-progress

GitHub Projects Workflows

「Auto-add sub-issues to project」のWorkflowが追加されていました。
(デフォルトの)Onにしておくと、子Issueを作成したときに自動でGitHub Projectsに追加してくれます。
sub-issue-08.png

まとめ

GitHub Projectでプロジェクトの進行管理をやりたい人にとっては待望の機能ではないでしょうか(少なくとも私はこれをずっと待っていました!)
まだPublic Previewという状況ではありますが、正式リリースとなることを願いつつ、この機能を利用したプロジェクト管理方法を模索して行きたいと思います。

現在はGitHub Discussionsでフィードバックを受け付けているようですので、気になる方は是非確認してみてください。

参考資料

この記事をシェアする

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.