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ư:
mainlà đườ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?
- Làm việc song song: Nhiều người làm nhiều tính năng cùng lúc
- Cách ly thay đổi: Code mới không ảnh hưởng code đang chạy
- Thử nghiệm an toàn: Có thể xóa branch nếu thử nghiệm thất bại
- 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 -aTạ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-loginChuyển branch
# Cách cũ
git checkout main
# Cách mới (Git 2.23+)
git switch mainXó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-nameQuy ước đặt tên Branch
| Prefix | Ý nghĩa | Ví dụ |
|---|---|---|
feature/ | Tính năng mới | feature/user-login |
bugfix/ | Sửa bug | bugfix/payment-error |
hotfix/ | Sửa bug khẩn cấp | hotfix/security-patch |
release/ | Chuẩn bị release | release/v1.2.0 |
docs/ | Cập nhật tài liệu | docs/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-feature2. 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-feature4. 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 mainTiếp theo
Học cách Merge & Rebase để kết hợp các branch lại với nhau.
Last updated on