Githubの検索に使える記述について
Githubの検索については公式ドキュメントが十分にまとめられている。しかし、少し辿りにくいようなので、人に共有しやすいように公式ドキュメントのリンクや一部の記述についてまとめた。
- # 公式ドキュメントを見よう
- # コードの検索
- # IssueとPRの検索
公式ドキュメントを見よう
Githubの検索については、公式ドキュメントが充実しているため、 このような記事を見るより先に公式ドキュメントを確認した方が良い。
次のドキュメントから、ほとんどの検索方法については確認することが出来る。
https://docs.github.com/en/search-github/searching-on-github
コード検索のみ後から大幅な変更が入ったからか、次のドキュメントに分けてまとめられている。
https://docs.github.com/en/search-github/github-code-search
コードの検索
コード検索は以前に大幅な変更があったため、古い記事があまり参考にならず、 またIssueなど他の対象で利用できる構文の大半が利用できないため、注意が必要。
現在コード検索で利用できる修飾子は次のドキュメントに記載されている。
https://docs.github.com/en/search-github/github-code-search/understanding-github-code-search-syntax
個人的に知っておいた方が良いと思う記述を次にまとめた。
記述 | 説明 | 例 |
---|---|---|
org:ORG | 特定のオーガニゼーション内を検索する。 | org:facebook |
user:USER | 特定のアカウント内を検索する。 | user:hrdtbs |
repo:OWNER/REPO | 特定のリポジトリ内を検索する。 | repo:facebook/react |
"keyword" | 完全一致を検索する。 | "tensorflow" |
A OR B | AまたはBで検索する。 | tensorflow OR keras |
NOT A | Aではない検索する。 | NOT is:archived |
path:PATH | 特定のパスにあるファイルやディレクトリ内を検索する。 | path:tests , path:*.ts |
/^*.A$/ | 正規表現を利用して検索する。 | path:/^*.ya?ml$/ |
is:STATUS | 特定の状態(archived, fork, verndored, genereted)にあるリポジトリやコンテンツを対象にする。補完されるので覚えなくていい。 | NOT is:archived |
IssueとPRの検索
単純な検索であれば、IssuesページとPullsページを参考にすると良い。
- https://github.com/issues : 自分が作成したIssueを検索する
- https://github.com/issues/assigned : 自分が指定されたIssueを検索する
- https://github.com/pulls : 自分が作成したPRを検索する
- https://github.com/pulls/review-requested : 自分がレビュワーに指定されたPRを検索する
コードな検索をしたい場合は、次のドキュメントに記載されている修飾子を利用できる。
https://docs.github.com/en/search-github/searching-on-github/searching-issues-and-pull-requests
日付の指定や特定の文字列などを除いた検索をしたい場合、次のドキュメントに記載されている構文が利用できる。