OSS 貢献における GitHub の Issue 探しについて手始めに調べてみた

最近 OSS 貢献について興味が湧き、調べ始めています。その中でも最初の取っ掛かりにあたる、Issue 探しについてまず調べてみました。


筆者の状況


  • OSS 貢献について調べ始めたばかり

  • どのリポジトリに貢献したいかも決まっておらず、探している最中


手がかりとなる Issue の Label について

OSS貢献をこれからやろうと思っても、どの Issue から手をつければいいか迷いますよね。

GitHub には、Issue の管理や優先順位付けを助ける役目として、Label をつけることができるのですが、その Label が Issue 探しの手がかりになるようです。

GitHub には デフォルトで準備されている Label があるのですが、その中でも OSS 貢献が初めての人向けの Issue につける Label があります。それが good first issuehelp wanted の2つです。

種類
内容

good first issue
最初のコントリビューター向けに良い Issue

help wanted
リポジトリのメンテナーが Issue や Pull Request の助けを求めている

以下、GitHub の User Document に Helping new contributors find your project with labels という記事から引用します。


Apply the help wanted and good first issue labels to issues in your repository to highlight opportunities for people to contribute to your project.


help wantedgood first issue という Label は、GitHub がデフォルトで提供しているよく知られた Label であり、リポジトリに貢献したい人向けの Issue ということを表しているので、Issue を探す手がかりとして良さそうです。


Label から貢献したい Issue を探す

ではその Label をもとに、どのように Issue を探すことができるのでしょうか?

いくつか探す方法を調べてみました。


GitHub Search で探す

一番手軽で身近な方法なのが、GitHub の Search から Issue を検索する方法です。

https://github.com/search から label:"help wanted" というように指定して検索すると、マッチした Issue が表示されます。

image.png

あるいは貢献したいリポジトリが決まっているのであれば、リポジトリの Issues から同じように検索することもできます。以下は Homebrew/brew の Issue 検索結果 です。

image.png


GitHub Help Wanted で探す

貢献したいリポジトリが決まっていない場合、GitHub Search ですべてのリポジトリに対して Issue 検索をかけるのはなかなかやりづらいと思います。 Github Help Wanted というサイトを使うと探しやすくなるかもしれません。

以下2つのカテゴリの検索条件で、GitHub 上の Issue を絞り込むことができます。


  • プログラミング言語(Languages)

  • Issue のラベル(Labels)

Ruby で help wantedgood first issue の Label のついた Issue を検索した結果は以下のような形になります。NewestOldestRecently UpdatedMost Commented というような条件でソートもできます。

image.png

このサイト自体オープンソースで開発されており、 React + Redux で動いているようで、検索条件を指定すると自動で検索結果を再描画してくれるので、使いやすかったです。

GitHub - mac-s-g/github-help-wanted: connecting developers with open source projects


終わりに

今まで OSS の Issues をあまりチェックしたことはなかったのですが、いざ OSS 貢献をしようと思って調べてみると、新たに知ることが多かった気がします。

貢献したいリポジトリが決まっていなくても、 Issue を色々確認する中で新たに興味を持てるようなリポジトリに出会うことができたりすると思うので、これから少しずつ Issue を読んでいこうと思います。


参考 URL