Closed10

GitHub CLI で label の一覧を取得する

プルリクエストにラベルを付けるようにしようかと思ったのだが補完が効かなったのでとりあえず一覧を取得する。

GiitHub CLI にラベル一覧を表示するコマンドはなさそう。

$ gh api でどうにかできないか調べた。

ためしてみる。

$ gh api repos/{owner}/{repo}/labels
[
  {
    "id": 3745722954,
    "node_id": "LA_kwDOGs7zUc7fQzJK",
    "url": "https://api.github.com/repos/hankei6km/gas-md2html/labels/bug",
    "name": "bug",
    "color": "d73a4a",
    "default": true,
    "description": "Something isn't working"
  },

<snip>

  {
    "id": 3745722967,
    "node_id": "LA_kwDOGs7zUc7fQzJX",
    "url": "https://api.github.com/repos/hankei6km/gas-md2html/labels/wontfix",
    "name": "wontfix",
    "color": "ffffff",
    "default": true,
    "description": "This will not be worked on"
  }
]

JSON の取得ができた。

--jq で整形する。

$ gh api repos/{owner}/{repo}/labels --jq '.[].name'
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix

一覧になった。

当面はこれをコピペするというとでクローズ。
(たぶん面倒になってくるとおもうけど)

gh pr create -lgh pr edit --add-label はリポジトリから一覧をとってくる。
これは上記の方法でできる。

gh pr edit --remove-label はプルリクエストの追加されているラベルの一覧をとってくる。
これは以下のように --json を使うとできる。

$ gh pr view --json labels --jq .labels[].name
enhancement

issue の場合。
とくに違いはないかな。

$ gh issue view 2 --json labels --jq .labels[].name
bug
documentation
question

上記の組み合わせでそれっぽく入力補完できるようになった。

再度クローズ。

このスクラップは2022/01/24にクローズされました
ログインするとコメントできます