以前調べたghコマンドでは、同期はできるけど、
エクスポート/インポートみたいなのはがんばらないといけなさそう。。
なので、エクスポート/ちょっと変更/インポートみたいなのはめんどい。。
いろいろ見てると、github-label-syncで、
json/yamlファイルからインポート(というか同期)ができるよう(*´ω`*)
なので、2つを使って、Issue Labelをエクスポート/インポートを試してみた
ghでエクスポート
まずは、GitHub CLI(ghコマンド)でエクスポート。
github-label-syncで取り込める形式にしておく。
# GitHub CLI(gh)のインストール $ brew install gh # GitHubのログイン $ gh auth login # ラベルのエクスポート $ gh label list -R owner/repo --json="name,color,description" | jq > labels.json
github-label-syncでインポート
次にgithub-label-syncでインポート。
アクセストークンが必要だけど、ghでログインした際のトークンを利用する。
-dry-run
があるので試してから、実際に同期をおこなう。
# github-label-syncのインストール $ npm install -g github-label-sync # ghでログインしたトークンの確認 $ cat ~/.config/gh/hosts.yml github.com: user: YOUR_ACCOUNT_NAME oauth_token: gho_YOUR_ACCESS_TOKEN git_protocol: https # ラベルのインポート(同期): Dry Run $ github-label-sync -a gho_YOUR_ACCESS_TOKEN --dry-run -l labels.json owner/repo_new # ラベルのインポート(同期) $ github-label-sync -a gho_YOUR_ACCESS_TOKEN -l labels.json owner/repo_new
以上!! 便利(*´ω`*)