GitHub CLIを使ってサクッとリモートリポジトリを作るまで
インストール
Windowsの場合はWinGetを初め、scoop、Chocolateryなど利用しているパッケージ管理方法でインストールします
wingetの場合
winget install --id GitHub.cli
scoopの場合
scoop install gh
Macの場合
brew install gh
GitHub CLIログインからCLIコマンドでリポジトリ作成まで
GitHubへログイン
ダイアログに従ってログインを進めます
gh auth login
ステータス確認してログイン状態が確認出来たらOKです
gh auth status
GitHub上のリポジトリをCLIから作成
gistやissueなどほとんどの操作が可能ですがここではRepoを扱ってみます
Manual | GitHub CLI
リポジトリの作成
gh repo create [<name>] [flags]
例1 リモートリポジトリだけを対話形式で作成する
gh repo create
例2 リモートにmy-projectをリポジトリを作成しlocalにcloneする:
gh repo create my-project --public --clone
既にローカルにgit initしている場合は、gh repo create
からPush an existing local repository to GitHub
を選ぶと楽です
ブラウザ開いてポチポチとrepo作成しなくていいのでかなり楽になります。
appendix
CLIからリポジトリをブラウザですぐ開く
gh browse
github上のリポジトリページをブラウザで表示できる
コマンド補完を利用する
gh completionを.bash_profileなどにevalで読み込ませるようにしておくとコマンド補完が使えます。
bashの場合
vim ~/.bash_profile
eval "$(gh completion -s bash)"
を追記して保存し、sourceで読み込む
source ~/.bash_profile
WindowsでPowershellの場合
まずprofileを作成し、
mkdir -Path (Split-Path -Parent $profile) -ErrorAction SilentlyContinue
notepad $profile
Invoke-Expressionでgh completionを読み込みます
Invoke-Expression -Command $(gh completion -s powershell | Out-String)
ターミナル等を再読込後gh r
辺りを入力後Tabを押して動作確認しましょう。
GitHub CLIのaliasを利用する
gh aliasでコマンドエイリアスの設定ができます。
現在の設定一覧を確認
gh alias list
エイリアス作成
公式サンプルよりhomeworkで自分にアサインされたissue一覧を表示する例。
homeworkも長いのでissue listを略してilにしてみます。
gh alias set il 'issue list --assignee @me'
同じく自分に割り当てたissueをcreateするicのalias作ってみます
gh alias set ic 'issue create --assignee @me'
gh alias list
して作成したaliasが登録されている事を確認します。
確認出来たら
gh [<作成したalias名>]
で使います。
Discussion