Branch Management
Last updated
Was this helpful?
Last updated
Was this helpful?
(branching model) được sử dụng tại gumi trong hơn 6 năm qua. Và hiện tại, đây là quy tắc chung bắt buộc phải sử dụng khi phát triển một dự án mới từ khi bắt đầu.
feature: Dùng để tạo các nhánh chức năng mới
bug: Dùng để tạo các nhánh liên quan đến bug (lỗi)
release: Dùng để tạo nhánh liên quan đến việc release phiên bản
hotfix: Dùng trong trường hơp tạo nhánh cho các lỗi xãy ra trên production
Sử dụng lowercase và kebab-case cho việc đặt tên nhánh
Sử dụng slash / để chia branch type (Loại nhánh) và branch name (tên nhánh)
Prefix tên nhánh với Backlog Item ID
Có hai nhánh chính với thời gian tồn tại là vô hạn (infinite lifetime)
develop: cho team phát triển làm việc trên các features/bugs fix/making releases
master: dùng cho việc release trên môi trường production, chuyển giao sản phẩm cho khách hàng
Dựa trên git-flow cũng như việc phân loại các nhánh đã quy định ở trên
Feature / Bug branches: phải được tạo từ nhánh develop, sử dụng để làm việc với features, bug fixes
Release branches: phải được tạo từ nhánh develop, sử dụng để testing và chuẩn bị cho việc release các nhóm chức năng đã hoàn thiện, hoặc bug fixes (nếu có) và tất cả phải được merged trở lại vào nhánh develop & master
Hotfix branches: được tạo ra từ nhánh master, cho việc sửa các lỗi nhỏ trên production, và tất cả phải được merged trở lại vào nhánh develop và master
Như đã đề cập từ đầu, cấu trúc chia nhánh được dựa trên git-flow của tác giả Vincent Driessen, License: Creative Commons BY-SA
Tên của nhánh release phải chứa các chữ số ngữ nghĩa theo
Original Post: