TẤT CẢ Câu lệnh kiểm tra PR GitHub từ terminal: hướng dẫn

Câu lệnh kiểm tra PR GitHub từ terminal: hướng dẫn

SEO 97/100 A+

Khi bạn làm việc trên một dự án có CI/CD tự động, việc dùng các câu lệnh kiểm tra PR GitHub trực tiếp từ terminal sẽ giúp bạn nhanh hơn và không phụ thuộc vào UI web. Thay vì click qua các tab, bạn có thể dùng GitHub CLI để check PR status, xem CI log, quản lý workflow — chỉ cần mở terminal.

Bài này liệt kê toàn bộ câu lệnh terminal kiểm tra PR GitHub mà bạn cần để check status, xem CI/deploy log, quản lý workflow từ local — giúp bạn tự chẩn đoán khi build fail hay deploy chậm mà không cần chờ UI load.

Tại sao nên dùng các câu lệnh kiểm tra PR GitHub?

Tính độc lập: bạn có thể kiểm tra bất kỳ lúc nào từ máy riêng, không cần mở browser.

Tốc độ: đánh một lệnh nhanh hơn click qua 5 tab UI.

Debug hiệu quả: xem CI log trực tiếp, không lỡ thông tin khi UI load chậm.

Tự động hoá: kết hợp script để monitor deployment hoặc trigger workflow mà không cần tay.

Cài đặt & đăng nhập GitHub CLI

Trước hết, bạn cần cài GitHub CLI (gh):

# Trên Mac (dùng Homebrew)
brew install gh

# Trên Linux (Ubuntu/Debian)
sudo apt install gh

# Trên Windows (dùng Chocolatey)
choco install gh

Kiểm tra cài đặt:

gh --version

Đăng nhập vào GitHub:

gh auth login

Làm theo hướng dẫn trên màn hình — chọn GitHub.com, HTTPS, authorize browser.

Kiểm tra trạng thái đăng nhập:

gh auth status

Nếu thành công, bạn sẽ thấy tên tài khoản GitHub của mình.


Kiểm tra trạng thái PR

1. Xem danh sách PR đang mở (gh pr status)

gh pr status

Kết quả: liệt kê PR của bạn (draft, review, CI checking…).

Khi dùng: sau khi push branch mới để xác nhận PR đã được tạo.

2. Xem chi tiết 1 PR cụ thể (gh pr view)

gh pr view 123

Kết quả: hiển thị số PR, tiêu đề, mô tả, người review, trạng thái merge.

Khi dùng: kiểm tra PR có sẵn hay chưa, xem review comment.

3. Xem kết quả checks của PR (gh pr checks)

gh pr checks 123

Kết quả: liệt kê tất cả check (CI/QA/build…) và trạng thái (✓ pass, ✗ fail, ⊘ pending).

Khi dùng: xác minh rằng QA, build và tất cả required check đều xanh trước khi merge.

4. Theo dõi check realtime (gh pr checks --watch)

gh pr checks 123 --watch

Kết quả: hiển thị check và tự cập nhật khi trạng thái thay đổi — không cần refresh.

Khi dùng: đợi CI chạy xong mà không cần vào GitHub.com.

5. So sánh code giữa PR và main (gh pr diff)

gh pr diff 123

Kết quả: diff đầy đủ các file thay đổi trong PR.

Khi dùng: xem lại diff local trước khi merge hoặc review code thay đổi.


Kiểm tra CI/Workflow & Deploy

1. Liệt kê các workflow run gần nhất (gh run list)

gh run list

Kết quả: danh sách 10 run gần nhất (ID, tên workflow, status, branch, ngày).

Khi dùng: xem lịch sử deploy hay workflow chạy.

Ví dụ: gh run list --limit 20 — xem 20 run cuối cùng.

2. Xem chi tiết 1 run (gh run view)

gh run view 12345

Kết quả: ID run, workflow name, status, jobs, ngày start/finish.

Khi dùng: kiểm tra run cụ thể để xem job nào fail.

3. Xem log chi tiết của 1 run (gh run view --log)

gh run view 12345 --log

Kết quả: in toàn bộ log text của tất cả job trong run đó.

Khi dùng: debug khi workflow fail — xem error message, stack trace.

Ví dụ: gh run view 12345 --log | grep -i "error" — tìm error trong log.

4. Theo dõi run realtime (gh run watch)

gh run watch 12345

Kết quả: hiển thị trạng thái job và cập nhật live khi job chạy.

Khi dùng: đợi deploy xong mà không cần mở browser.

5. Liệt kê workflow (gh workflow list)

gh workflow list

Kết quả: danh sách workflow trong repo (build, deploy, qa-check…) và trạng thái.

Khi dùng: xem tất cả workflow để quyết định trigger cái nào.

6. Xem workflow cụ thể (gh workflow view)

gh workflow view deploy.yml

Kết quả: chi tiết workflow: trigger, step, status.

Khi dùng: hiểu workflow hoạt động thế nào trước khi trigger.


Kiểm tra Git local

git status

git status

Kết quả: branch hiện tại, file thay đổi, staged changes.

Khi dùng: trước khi commit — xác nhận thay đổi đúng.

git branch -a

git branch -a

Kết quả: danh sách branch local và remote.

Khi dùng: check branch nào đã merge hay tìm branch cũ.

git log --oneline -20

git log --oneline -20

Kết quả: 20 commit gần nhất, mỗi dòng một commit (SHA, message).

Khi dùng: xem commit history và tìm commit cụ thể.

git remote -v

git remote -v

Kết quả: danh sách remote (origin URL, upstream…).

Khi dùng: xác minh remote đúng trước khi push.

git fetch origin

git fetch origin

Kết quả: tải thông tin branch mới từ remote (không thay file local).

Khi dùng: cập nhật cache remote trước khi check branch.


Bảng lệnh nhanh — dùng khi nào + ví dụ

LệnhKhi dùngVí dụ
gh pr statusXem PR của bạn đang ở trạng thái gìSau khi push branch mới
gh pr view 123Xem chi tiết PR #123Trước merge — check reviewer
gh pr checks 123Xem check/CI pass hay failĐợi CI xong
gh pr checks 123 --watchĐợi CI mà không refreshĐợi deploy lần đầu
gh pr diff 123So sánh code PR vs mainReview before merge
gh run listXem workflow run gần nhấtTìm run fail
gh run view 12345Chi tiết run cụ thểXem job nào fail
gh run view 12345 --logLog text đầy đủDebug error message
gh run watch 12345Theo dõi run liveĐợi deploy xong realtime
gh workflow listDanh sách workflowQuyết định trigger nào
git statusFile thay đổi hiện tạiTrước commit
git log --oneline -2020 commit gần nhấtTìm commit để revert
git fetch originCập nhật cache remoteTrước kiểm tra branch cũ

Quy trình debug nhanh 5 phút

Khi PR fail hoặc deploy chậm, đây là các bước kiểm tra nhanh:

Bước 1: Kiểm tra PR check xanh hay đỏ

gh pr checks 123

Bước 2: Nếu đỏ, xem log của run fail

gh run list | grep -i "deploy\|build\|fail"
# Lấy RUN_ID từ kết quả
gh run view <RUN_ID> --log | grep -i "error"

Bước 3: Nếu không tìm thấy, xem log đầy đủ

gh run view <RUN_ID> --log | less
# Bấm '/' để search keyword, 'q' để thoát

Bước 4: Nếu là build fail (Zola, SCSS, JS…), fix local + commit + push

git add .
git commit -m "fix: build error on [component]"
git push origin <branch-name>
# Quay lại bước 1

Bước 5: Nếu là merge conflict, resolve + push lại

git fetch origin main
git merge origin/main
# Sửa conflict trong editor
git add .
git commit -m "resolve: merge conflict with main"
git push origin <branch-name>

FAQ

Q: Làm sao để trigger workflow từ terminal?

A: Dùng gh workflow run:

gh workflow run deploy.yml --ref main

Q: Có thể xem log của job cụ thể (không phải toàn run)?

A: Chưa có lệnh riêng, nhưng bạn có thể filter log:

gh run view 12345 --log | grep "job-name-here"

Q: Làm sao để tự động check PR cứ 30 giây?

A: Viết script bash loop (hoặc dùng watch):

watch -n 30 "gh pr checks 123"

Q: Terminal không hiển thị màu, khó đọc?

A: Thêm flag --web để mở browser thay vì terminal:

gh pr view 123 --web

Kết luận

Biết các lệnh terminal để kiểm tra PR, CI, deploy sẽ giúp bạn:

Độc lập: không cần UI, không cần click chuột.

Nhanh: lệnh text nhanh hơn mở browser.

Chuyên nghiệp: developer thật biết dùng terminal.

Tự động: có thể kết hợp script để monitor.

Nếu bạn muốn tìm hiểu sâu hơn về quy trình git từ đầu, đừng bỏ qua bài lệnh Git đưa blog lên production — nó giải thích từng bước push, commit, tạo PR.

Hôm nay, hãy mở terminal và thử gh pr status — bạn sẽ thấy nó dễ dùng hơn bạn tưởng.

Tham khảo thêm: GitHub CLI Documentation (tiếng Anh) có đầy đủ lệnh và ví dụ từ chính GitHub. 🚀

Tham khảo & Nguồn dữ liệu

1. Liên kết bên ngoài được sử dụng trong bài viết

2. Liên kết nội bộ liên quan

3. Bản quyền & Ghi nguồn

Một phần dữ liệu trong bài viết được tham khảo từ GitHub CLI Documentation. Mọi thương hiệu, tên sản phẩm và tài liệu gốc thuộc quyền sở hữu của chủ sở hữu tương ứng. Bài viết chỉ trích dẫn, tổng hợp và phân tích — không nhằm thay thế tài liệu chính thức.

💬 BÌNH LUẬN

Đăng nhập GitHub để comment. Hỗ trợ markdown, reaction, reply.

S-DNA · CI/CD Monitor

Live TheoDoi8

🔄 running
theodoi8@github-actions

Đang tải terminal theodoi8…