Phát triển Trunk-Based là gì
Phát triển trong nhánh đơn
Phát triển Trunk-Based là phương pháp phát triển mà tất cả developers làm việc trong một nhánh chính duy nhất (trunk/main), thực hiện các commit nhỏ và thường xuyên.
Nguyên tắc chính
- Tất cả thay đổi đi trực tiếp vào main/trunk
- Nhánh feature ngắn hạn (tối đa 1-2 ngày)
- Commit thường xuyên (nhiều lần trong ngày)
- Tích hợp liên tục là bắt buộc
Lợi ích
- Giảm thiểu xung đột merge
- Phản hồi nhanh
- Lịch sử commit đơn giản
- Tăng tốc quy trình CI/CD
- Giảm rủi ro tích hợp
Thực hành để thành công
- Feature Flags — ẩn tính năng chưa hoàn thành
- Trunk-based + nhánh ngắn hạn — nhánh 1-2 ngày
- Code Review liên tục — review code liên tục
- Kiểm thử tự động — test tự động mỗi commit
So sánh với Git Flow
| Khía cạnh | Trunk-Based | Git Flow | |-----------|-------------|----------| | Nhánh | 1 chính | Nhiều dài hạn | | Release | Liên tục | Theo lịch | | Độ phức tạp | Thấp | Cao | | Xung đột | Hiếm | Thường xuyên |
Khi nào sử dụng
- Đội ngũ giàu kinh nghiệm với độ phủ test tốt
- Dự án có CI/CD
- Khi cần release thường xuyên