GitHub CLI でリポジトリの一覧を得る

1 min読了の目安(約900字TECH技術記事

この記事は何?

現時点で、GitHub CLI は指定ユーザのリポジトリ一覧を取得することができません。
一覧を取得する方法を書きます。

前提

  • Linux
  • GitHubクライアント(gh), jq インストール済み。

やりかた

alias に次のコマンドを加える。

aliases:
    repos: |
        !gh api --paginate graphql -f owner="$1" -f query='
          query($owner: String!, $per_page: Int = 100, $endCursor: String) {
            repositoryOwner(login: $owner) {
              repositories(first: $per_page, after: $endCursor, ownerAffiliations: OWNER) {
                nodes { nameWithOwner }
                pageInfo { hasNextPage endCursor }
              }
            }
          }
        ' | jq -r '.data.repositoryOwner.repositories.nodes[].nameWithOwner' | sort

次のコマンドで指定ユーザ(この例ではユーザ kumarstack55 )のリポジトリ一覧が出る。

gh repos kumarstack55

gh コマンドに予め入ってるアクセストークンを使うので、 Private なリポジトリも取れます。

参考

以上です。