GitHubのAdvanced searchを使って特定のキーワードを含むファイル・リポジトリを検索する

CloudFormationのスタック作成が捗る〜!!!
2020.05.01

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

コンサル部@大阪オフィスのYui@MayForBlueです(`・ω・´)

CloudFormationのスタックを作成していて他の人のリソースの作り方を見たいなあと思ったときに出会ったGitHubのAdvanced searchがめちゃくちゃ便利だったので紹介したいと思います。

GitHubでは単純なキーワード検索以外に、様々なオプションをつけてリポジトリやコード、Issueなどを検索することができます。

この方法での検索はhttps://github.com/search/advanced に必要な項目を入力するか、検索構文を検索ボックスに入力することで実行できます。

公式ドキュメント:https://help.github.com/ja/github/searching-for-information-on-github/searching-on-github

検索できること

高度なオプション

  • 作成したユーザー
  • リポジトリ
  • 作成日
  • 使用言語

リポジトリのオプション

  • スター数
  • フォーク数
  • サイズ(KB)
  • プッシュ日付
  • ライセンスの種類

コードのオプション

  • 拡張子
  • ファイルサイズ
  • パス
  • ファイル名

Issueのオプション

  • 状態
  • コメント数
  • ラベル
  • 作成者
  • メンションされたユーザー
  • アサインされたユーザー
  • 更新日付

ユーザーオプション

  • ユーザー名
  • ユーザーの地域
  • フォロワー数
  • パブリックリポジトリ数
  • 言語

Wikiのオプション

  • 更新日付

キーワード検索

上記以外に、hogehoge in:fileとすることでソース内にhogehogeというキーワードを含むファイルを、hogehoge in:pathとすることでファイルパスにhogehogeというキーワードを含むファイルを検索することができます。

また、より詳細な検索方法については公式ドキュメントのGitHub 上で検索するに情報が記載されています。
上記リンクのオプションを用いることでリポジトリやwiki内をさらに詳細に検索することができます。

やってみる

AWSのサンプルソースの中からlambdaというキーワードが含まれているyamlファイルを検索してみました。
検索ワード:lambda in:file user:aws-samples language:YAML https://github.com/search/advanced でよく使う検索基準を作成しておいてメモ帳などに保存しておくとコピペですぐに検索することができます。

最後に

CloudFormationやCDKなど、ある程度使いたいキーワード、リソース名が決まっているときに他の人のリソースの書き方を簡単に検索することができるのでとても捗るなあと思いました!
この記事がどなたかのお役に立てば幸いです。

以上、大阪オフィスのYui(@MayForBlue)でしたっ(`・ω・´)

参考リンク

公式ドキュメント:https://help.github.com/ja/github/searching-for-information-on-github/searching-on-github
検索ページ:https://github.com/search/advanced