Cách Sử Dụng Github CLI
Dùng gh command-line tool để làm việc với GitHub nhanh hơn
GitHub CLI (gh) cho phép làm việc với GitHub ngay từ terminal. Không cần mở browser -- tạo PRs, check issues, quản lý repos mà không rời khỏi nơi mình đang code.
Ý tưởng lõi: Ở trong flow. Terminal là nơi mình code, nên cũng là nơi quản lý code.
Vì sao dùng CLI
| Task | Browser | CLI |
|---|---|---|
| Tạo PR | Mở browser → Tìm repo → Click nút → Điền form | gh pr create |
| Check trạng thái PR | Mở browser → Tìm PR → Đọc | gh pr status |
| Xem issue | Mở browser → Vào issues | gh issue view 123 |
Từng giây cộng dồn. Quan trọng hơn, giữ được sự tập trung -- không bị browser hút vào mấy tab khác.
Cài đặt
# macOS
brew install gh
# Windows (Chocolatey)
choco install gh
# Windows (Winget)
winget install GitHub.cli
Sau khi cài, xác thực:
gh auth login
Làm theo hướng dẫn để kết nối tài khoản GitHub.
Các Lệnh Thiết Yếu
Pull Requests
# Tạo PR (interactive)
gh pr create
# Tạo PR với title và body
gh pr create --title "Add keyword export" --body "Exports results to CSV"
# Tạo PR tự điền từ commit messages
gh pr create --fill
# Xem PRs của mình
gh pr status
# Xem một PR cụ thể
gh pr view 123
# Checkout PR về máy để test
gh pr checkout 123
# Merge PR
gh pr merge 123
# Đóng PR
gh pr close 123
Issues
# Tạo issue (interactive)
gh issue create
# Tạo issue với title
gh issue create --title "Bug: Export fails for large datasets"
# Liệt kê issues đang mở
gh issue list
# Xem một issue
gh issue view 123
# Đóng issue
gh issue close 123
# Mở lại issue
gh issue reopen 123
Repository
# Clone repo
gh repo clone owner/repo
# Tạo repo mới
gh repo create my-project
# Mở repo trên browser
gh repo view --web
# Fork repo
gh repo fork owner/repo
Workflow (GitHub Actions)
# Liệt kê workflow runs
gh run list
# Xem một run cụ thể
gh run view 123
# Theo dõi run đang chạy
gh run watch
# Chạy lại workflow bị lỗi
gh run rerun 123
Workflow Hàng Ngày
Bắt đầu feature
# Lấy main mới nhất
git checkout main && git pull
# Tạo feature branch
git checkout -b feature/keyword-export
# ... viết code ...
# Push và tạo PR trong một bước
git push -u origin feature/keyword-export
gh pr create --fill
Review PR
# Xem cái gì cần review
gh pr status
# Checkout PR về máy để test
gh pr checkout 123
# Test xong, approve
gh pr review 123 --approve
# Hoặc request changes
gh pr review 123 --request-changes --body "Need to handle empty datasets"
Xử lý issue nhanh
# Xem issues đang mở
gh issue list
# Thêm label
gh issue edit 123 --add-label "bug"
# Assign cho mình
gh issue edit 123 --add-assignee @me
# Đóng kèm comment
gh issue close 123 --comment "Fixed in PR #456"
Aliases
Thêm vào shell config để nhanh hơn nữa:
# Tạo PR nhanh
alias gpr="gh pr create --fill"
# Check trạng thái PR
alias gprs="gh pr status"
# Liệt kê PRs của mình
alias gprl="gh pr list --author @me"
# Mở PR hiện tại trên browser
alias gprv="gh pr view --web"
CLI hay Browser?
| CLI | Browser |
|---|---|
| Tạo PRs | Review PR phức tạp với nhiều files |
| Check trạng thái nhanh | Đọc thảo luận dài |
| Thao tác routine | Quản lý project boards |
| Scripting/automation | Setup repo lần đầu |
Tham Khảo Nhanh
| Mình muốn... | Lệnh |
|---|---|
| Tạo PR | gh pr create |
| Xem PRs của mình | gh pr status |
| Merge PR | gh pr merge 123 |
| Tạo issue | gh issue create |
| Liệt kê issues | gh issue list |
| Clone repo | gh repo clone owner/repo |
| Xem workflow runs | gh run list |
| Mở repo trên browser | gh repo view --web |