こんにちは。オガリア開発チームの粂です。
前回の記事で最近Go言語の勉強をしていてOSSライブラリを読んでいると書きましたが、そんなときはほぼ100%と言っていいほどGitHubを使います。
ですので、本記事ではGitHubでお目当てのリポジトリを探す方法を書いていきたいと思います。
1. Trendingを使う
1つ目はよりシンプルな方法です。GitHubのTrendingという機能を使う方法です。
Go言語を例に取りましょう。
今日、Go言語関連で話題になっているリポジトリの場合
https://github.com/trending?l=go
ちなみに今週だと
https://github.com/trending?l=go&since=weekly
さらに今月だと
https://github.com/trending?l=go&since=monthly
lで対象の言語を指定して、sinceで期間を指定します。
特にどういった用途のライブラリかは関係なく今話題になっているリポジトリが知りたい場合はこの方法は便利だと思います。
2. Searchを使う
GitHubのいわゆる検索窓を使う方法なのですが、こちらはより細かい条件が指定できます。
ここでもGo言語を例にとって進めていきますが、MySQL関連のリポジトリを検索したいとします。
languageを指定すれば言語指定ができます。
mysql language:go
starの数を100以上で絞りたい場合はstarsを使います。
mysql language:go stars:>=100
forkの数を100以上で絞りたい場合はforksを使います。
mysql language:go forks:>=100
ちなみにデフォルトはforkしたリポジトリは検索結果には表示されないようになっています。
fork:trueでforkしたリポジトリも表示したりfork:onlyでforkしたリポジトリのみ表示したりできるようですが、今回のような検索の場合は利用シーンはあまりないのかなと思います。
リポジトリの作成が2013年より後で絞りたい場合はcreatedを使います。
mysql language:go created:>2013
リポジトリの最終更新日が2013年より後で絞りたい場合はpushedを使います。
mysql language:go pushed:>2013
他にもサイズを指定した検索や、文字列検索の範囲(名称のみか?説明も含めるか?)を指定した検索などありますが、個人的には上記に挙げたもので事足りる感じです。以下のヘルプに詳細が載っていますので、ご参照ください。
https://help.github.com/articles/searching-repositories
ここまで書いておいてあれなんですが、Advanced searchを使えば上記と同じような検索が可能です。
https://github.com/search/advanced
ただ、基本的な検索クエリを覚えて検索窓から実行したほうが便利かなと思います。この辺りは好みの問題かもしれません。
最後までお読みいただきありがとうございました!