【GitHub】GitHub-CLIを使ってみる
リポジトリを作る際に、ブラウザとコンソール行ったり来たりするのが面倒になってきたので何かないかな……と思っていたところ、公式の CLI ツール があったので使ってみました。
環境
- macOS Monterey 12.3.1
目次
1. インストール ↑
Homebrew でインストールします。
$ brew install gh
2. ログイン ↑
$ gh auth login # 通常アカウントなのでGitHub.comを選択 ? What account do you want to log into? [Use arrows to move, type to filter] > GitHub.com GitHub Enterprise Server # お好みで選択 ? What is your preferred protocol for Git operations? [Use arrows to move, type to filter] > HTTPS SSH # yes Authenticate Git with your GitHub credentials? Yes # 簡単かなと思ったので、ブラウザで認証を選択 ? How would you like to authenticate GitHub CLI? [Use arrows to move, type to filter] > Login with a web browser Paste an authentication token # ブラウザでGitHubにログインすると、認証コード入力を求められる # ここに表示された認証コードを、ブラウザの入力欄へ ! First copy your one-time code: XXXX-XXXX Press Enter to open github.com in your browser...
3. リポジトリ作成 ↑
これがやりたかったです!
# README作成してから、first commitまで $ mkdir github-cli-test $ cd github-cli-test/ $ git init $ touch README.md $ echo '# github-cli-test' > README.md $ git add . $ git commit -m ':tada: first commit' $ git branch -M main # リポジトリ作成〜最初のpush $ gh repo create github-cli-test --description ':octocat: GitHub CLIのテスト' --public $ git remote add origin https://github.com/kyoruni/github-cli-test.git $ git push -u origin main
4. issue ↑
private リポジトリの issue を個人的なメモ帳として使っているので(!?)、コンソールから issue をサクサク作れるのはうれしいです。
今回は試しませんでしたが、issue にラベルを設定したりもできるみたいです。
# 作成 $ gh issue create --title 'テスト' --body 'これはテストです' $ gh issue create --title 'hoge' --body 'fuga' # 確認 $ gh issue list Showing 2 of 2 open issues in kyoruni/github-cli-test #2 hoge about 1 minute ago #1 テスト about 1 minute ago # コメント $ gh issue comment 1 --body 'コメントのテストです'
5. p-r
# p-r用のブランチ作って、適当に変更 -> push $ git checkout -b pr-test $ echo '## テスト' >> README.md $ git add . $ git commit -m '#1 :pencil: README修正' $ git push origin HEAD # p-rを作成してみる $ gh pr create --title 'p-rのテスト' --body 'これはテストです' # マージしてみる $ gh pr merge 3 ? What merge method would you like to use? Create a merge commit ? Delete the branch locally and on GitHub? Yes ? What's next? Submit # issueを閉じる $ gh issue close 1
6. スクリプトを書いた ↑
ぽちっと叩いたらリポジトリ作るときの一連の流れができるようにしました。
このまま使うと kyoruni
アカウントに push
しようとしたり、kyoruniname
とかいう謎エイリアスが実行されてしまうので適宜修正が必要です。
7. 参考URL ↑
8. おわりに ↑
今回の作業は以下で行いました。