1行で
personal access tokenを作成して、config.ymlを手動で作成する
詳しく
repositoryとgistの権限のあるpersonal access tokenを作成
- https://github.com/settings/tokens/ にアクセスする
- repositoryとgistの権限を選択する(下記の画像参照)
config.ymlを gh repositoryを参考に手動で作成する
-
フォルダを作成する
mkdir -p ~/.config/gh/
-
config.yml のフォーマットを gh のレポジトリで確認する
```sh
vi ~/.config/gh/config.yml
```
-
config.yml を上記のフォーマットを参考に作成する
hosts: github.com: user: your_github_username oauth_token: your_token # (直前の手順で生成した personal access token を貼ってください)
-
適当なディレクトリで動作確認(エラーが出なければOK)
gh pr status
どうやってこの方法に至ったか
-
guiが使えない環境で認証しようとすると以下のようなメッセージが表示された。
If you are on a server or other headless system, use this workaround instead: 1. Complete authentication on a GUI system 2. Copy the c
ontents of ~/.config/gh/config.yml to this systemthe access token could not be read from HTTP response
```
-
なるほど。なんかわからんが、
~/.config/gh/config.yml
をうまく生成してやればいいのねとわかった。 -
あとはそのフォーマットと内容が判断できれば良い。
フォーマットは gh のレポジトリ を見に行くと、めっちゃテストしてあってすぐわかった。(githubの人たちちゃんとしてるなー。) -
最後に権限はこれまたテスト内容を見に行くとrepositoryとgistの権限をテストしているので、この2種類さえあれば良いとわかる。
-
今回の手順が判明。(若干パズル説いてる感があって面白かったのと、エンジニアだからソース読みに行ったらちゃんと分かるんだなと言う気持ちになった。)
謝辞
GUIが使えない環境でのghコマンドの認証方法 も参照させてもらった。
ただ、私の手元ではうまくいかなかった。より確実な方法を見つけたので載せる。