GitHub CLI:用指令就能開 issue、發 PR

用 Vim 在終端機裡寫程式,寫完了要推到 GitHub 上發 PR,丟給其他人審查。這個時候非得打開瀏覽器不可嗎?你可以考慮使用 GitHub CLI。

大家都知道 GitHub 上有許多功能,包含 Issue 管理問題、PR(Pull Request)管理還沒合進主要版本的程式碼。在許多公司或是開源專案開發,都會使用 GitHub 來控管程式碼、軟體品質。

而這幾天 GitHub 的 CLI(Command Line Interface)也推出了 v1.0 的正式版,讓你可以用在指令介面中管理 Issue、PR,檢查 GitHub Actions 的 Check 狀態,也可以管理 GitHub 上的 Release。

安裝 GitHub CLI

這是 Debian/Ubuntu 的安裝方法。如果你是 Chromebook 預設的 Linux,通常使用這種方法安裝就可以了。

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0
sudo apt-add-repository https://cli.github.com/packages
sudo apt update
sudo apt install gh

如果你是其他作業系統,可以參考 官方網站,包含 Windows、macOS 的版本。

登入 GitHub CLI

安裝好之後,直接使用這個指令:

gh auth login

選擇 GitHub.com 並選擇用 web browser 登入,就會跳出瀏覽器,依照指示並輸入對應的一次密碼就可以順利登入了。

如果你是使用 WSL 之類的環境,請先到 GitHub 設定 中產生一把 Access Token,並選擇使用 token 的方式登入。

最後,如果你不知道該選擇 SSH 還是 HTTPS 方式,請選擇 HTTPS。

建立 repo

首先我們如果要開一個專案,例如 testcli,不需要到網頁上點新增 Repository,可以直接使用這個指令:

gh create testcli

成功後會在目前的資料夾中再建立一個 testcli 的資料夾。

修正程式碼並開啟 PR

剛剛打開的那個 Repo,我故意打了一個含有錯字的 commit 上去。首先我們需要切到一個新的 branch:

git checkout -b feat/fixTypo

接著編輯檔案並重新 commit:

vi test.js
git add .
git commit -m "fix typo"

通常這個時候要 push 上去並到網頁上開啟 PR,但是有了 CLI 我們可以直接這樣做:

gh pr create -t "fix typo"

其中 -t 是標題,如果你想要的話,也可以直接使用 -b 加上內容。

接著就可以成功看到開啟的 Pull Request

你也可以直接使用 gh pr view 1 來查看第一個 PR,沒問題的話可以使用 gh pr merge 1 來合併第一個 PR。

以上大概就是懶惰不想開瀏覽器發 PR 的方法。issue 的方式也類似,例如 gh issue creategh issue view 都可以看到打開或查看,不過還是鼓勵 issue 要寫清楚,就不建議在 command line 上操作了。

本篇文章同步發表在 iT邦幫忙