“GitHub CLI”でOrganization内のリポジトリを一覧表示する方法
はじめに
GitHub CLI が便利で愛用しています。
GitHub CLI をインストールすると使えるようになる gh
コマンドと、 別ツールである ghq
コマンドを組み合わせるとコマンドラインライフ(?)がとても快適になります。
さて、GitHub にて新しい組織(Organizations)に所属したとき、この組織が所有するリポジトリの一覧を取得したかったのですが、 ほんの少しハマったのでやり方を紹介します。
検証環境
$ uname -moi
arm64 MacBookPro18,3 Darwin
$ bash -version | head -n 1
GNU bash, バージョン 5.1.16(1)-release (aarch64-apple-darwin21.1.0)
$ gh --version
gh version 2.5.2 (2022-03-01)
https://github.com/cli/cli/releases/tag/v2.5.2
gh
コマンドで普通にリポジトリを一覧
gh
コマンドで普通にリポジトリを一覧出力してみましょう。
$ gh repo list
Showing 30 of 200 repositories in @genzouw
genzouw/docker-minecraft-server Docker image that provides a Minecraft Server that will automatical... public, fork 1d
genzouw/bin private 1d
genzouw/setup_scripts private 3d
genzouw/myconfig private 4d
genzouw/kanji private 4d
genzouw/golly private 4d
genzouw/haldata-apollo-client private 4d
genzouw/backend private 4d
genzouw/hyakuninissyu private 4d
genzouw/aws-cognito-example-custom-page public 5d
genzouw/ubuntu-sandbox Dockerfile for Ubuntu public 6d
...
自分の所有するリポジトリが一覧表示されます。
200 リポジトリも所有しているんですね。びっくりしました。 掃除しないと。
さて、オプションを付けなければ デフォルトで 30 リポジトリしか表示されません 。
gh
コマンドでデフォルト上限の 30 件以上のリポジトリを出力
---limit
というオプションを付与すれば、30 件以上出力されます。
試しに出力結果を wc -l
コマンドにパイプで渡して、件数を確認してみましょう。
# --limit オプション無しで出力した結果の件数を確認
$ gh repo list | wc -l
$ 30
# --limit オプション有りで出力した結果の件数を確認 (100件)
$ gh repo list --limit 100 | wc -l
$ 100
# --limit オプション有りで出力した結果の件数を確認 (200件)
$ gh repo list --limit 200 | wc -l
$ 200
確かに表示される件数が変わっているようです。
本題:Organization 所有のリポジトリを出力する
さて本題です。
今まで出力されてたリポジトリ一覧は自分で所有しているリポジトリ(僕の場合は genzouw ですね)しか出力されていませんでした。
自分の所属する Organizations が所有するリポジトリを一覧表示したいは、 引数として Organizations 名を指定します。
$ gh repo list ORG_NAME
Showing 30 of 97 repositories in @ORG_NAME
ORG_NAME/aaaaaaaaaaaa
ORG_NAME/bbbbbbbbbbbbbbbb
ORG_NAME/ccccccccccccc
ORG_NAME/dddddddddddddddddd
ORG_NAME/eeeeeeeeeeee
ORG_NAME/fffffff
ORG_NAME/ggggggggggggggggggg
ORG_NAME/hhhhhhhhhhhhhhhhh
...
ここでは Organizations 名を伏せ字 ORG_NAME
にしています。ご自分が所属する Organizations に適切に書き換えてください 。
ひとこと
実はヘルプを見たら普通に書いていました。
$ gh repo list --help
List repositories owned by user or organization
For more information about output formatting flags, see `gh help formatting` .
USAGE
gh repo list [<owner>] [flags]
ディスカッション
コメント一覧
まだ、コメントがありません