Tôi không chắc chắn ý bạn là gì khi phân nhánh từng phiên bản của dự án hiện tại.
Dù sao, git khuyên bạn nên tạo 'nhánh chủ đề'. Theo 'nhánh chủ đề', điều đó có nghĩa là bạn tạo một chi nhánh khi bạn đang làm việc trên một tính năng/lỗi. Giả sử tôi đang làm việc trên jQueryUI và tôi đã được yêu cầu thêm một tính năng vào Lịch jQuery cho phép người dùng chỉ định các ngày không thể chọn được.
Nếu tôi ở chi nhánh có tên chính, tôi sẽ tạo chi nhánh địa phương có tên là nhánh 'SpecifyDateExclusion' và bắt đầu thực hiện thay đổi của tôi. Bất kỳ và tất cả các mã liên quan đến tính năng này sẽ đi vào chi nhánh này.
master
|
|
|___ SpecifyDateExclusion
Trong khi tôi đang làm việc trên tính năng này, một báo cáo lỗi cho biết lịch đã bị hỏng trong Opera 10 và lỗi này cần được khắc phục ngay bây giờ. Tôi quay lại nhánh chính của mình và tạo một nhánh khác có tên Opera10BugFix và bắt đầu sửa lỗi trong đó.
master
|
|
|___ SpecifyDateExclusion
|
|
|___ Opera10BugFix
Rất sớm, bạn có thể có các chi nhánh như
master
|
|
|___ SpecifyDateExclusion
|
|___ Feature1
|
|___ Feature2
|
|___ Feature3
|
|___ Opera10BugFix
|
|___ BugFix1
|
|___ BugFix2
lợi thế bạn có thể yêu cầu là gì?
Ưu điểm là tính linh hoạt mà nó mang lại cho tôi trong khi chuẩn bị bản phát hành của tôi. Giả sử bản phát hành tiếp theo của tôi chủ yếu là về sửa lỗi.
Tôi sẽ tạo nhánh mới có tên 'InterimBugFix' từ trang cái và hợp nhất tất cả các nhánh sửa lỗi của tôi.
Nếu tôi muốn tạo kết hợp phát hành lỗi/tính năng, tôi sẽ tạo một chi nhánh có tên 'NextVersion' từ chính và hợp nhất các chi nhánh/chi nhánh sửa lỗi của tôi.
Git cực kỳ mạnh mẽ về cách bạn quản lý các chi nhánh này và nếu bạn có thể tưởng tượng điều gì đó, Git sẽ cho phép bạn làm điều đó.
"Để cho nhánh chính sạch sẽ bằng cách không làm cho nó trở thành công việc đang tiến hành (WIP)" Tôi thích ý tưởng đó. – LDK