Skip to Content

Branch

Branch là gì?

Branch (nhánh) cho phép bạn phát triển song song nhiều tính năng mà không ảnh hưởng lẫn nhau. Hãy tưởng tượng như:

  • main là đường cao tốc chính
  • Mỗi branch là đường nhánh để thử nghiệm
  • Khi hoàn thành, merge lại vào đường chính

Tại sao cần Branch?

  1. Làm việc song song: Nhiều người làm nhiều tính năng cùng lúc
  2. Cách ly thay đổi: Code mới không ảnh hưởng code đang chạy
  3. Thử nghiệm an toàn: Có thể xóa branch nếu thử nghiệm thất bại
  4. Code review: Dễ dàng review trước khi merge

Các lệnh Branch cơ bản

Xem danh sách branch

# Branch local git branch # Tất cả branch (cả remote) git branch -a

Tạo branch mới

# Tạo branch git branch feature-login # Tạo và chuyển sang branch mới git checkout -b feature-login # Hoặc (Git 2.23+) git switch -c feature-login

Chuyển branch

# Cách cũ git checkout main # Cách mới (Git 2.23+) git switch main

Xóa branch

# Xóa branch đã merge git branch -d feature-login # Xóa branch chưa merge (force) git branch -D feature-login

Đổi tên branch

# Đổi tên branch hiện tại git branch -m new-name # Đổi tên branch khác git branch -m old-name new-name

Quy ước đặt tên Branch

PrefixÝ nghĩaVí dụ
feature/Tính năng mớifeature/user-login
bugfix/Sửa bugbugfix/payment-error
hotfix/Sửa bug khẩn cấphotfix/security-patch
release/Chuẩn bị releaserelease/v1.2.0
docs/Cập nhật tài liệudocs/api-guide

Workflow phổ biến

1. Tạo branch cho tính năng

git checkout main git pull origin main git checkout -b feature/new-feature

2. Làm việc và commit

# ... code ... git add . git commit -m "feat: implement new feature"

3. Push lên remote

git push -u origin feature/new-feature

4. Tạo Pull Request và Merge

(Xem phần Pull Request)

Xem thông tin Branch

# Branch nào chứa commit git branch --contains commit-hash # Branch cuối merge với main git branch --merged main # Branch chưa merge git branch --no-merged main

Tiếp theo

Học cách Merge & Rebase để kết hợp các branch lại với nhau.

Last updated on