Gần đây tôi đã nhận thấy một cái gì đó nhìn vào một số dự án phổ biến trên GitHub, rằng không có develop
chi nhánh. Và trên thực tế, hướng dẫn GitHub Flow cũng không đề cập đến nó. Từ hiểu biết của tôi, master
nên luôn luôn hoàn toàn ổn định và phản ánh sản xuất. Nếu các nhà phát triển đang làm việc trên các nhánh tính năng và sau đó hợp nhất chúng vào master
khi chúng được thực hiện, điều đó có nghĩa là có một khoảng thời gian mà các tính năng / sửa lỗi được sáp nhập vào master
và master
nhánh thực sự mới hơn so với sản xuất.
Sẽ không có ý nghĩa hơn khi nhóm tạo ra tính năng / sửa chữa các nhánh develop
, hợp nhất trở lại vào đó, và khi phiên bản tiếp theo hoàn toàn sẵn sàng để phát hành, develop
được sáp nhập master
và một thẻ được tạo ra? Hãy tưởng tượng nếu mọi người đang hợp nhất trực tiếp master
và một lỗi được báo cáo trong sản xuất trở nên khó khắc phục vì master
cơ sở mã cơ sở đã thay đổi đáng kể. Sau đó, các nhà phát triển chỉ cần thông báo cho người dùng chờ đến bản phát hành tiếp theo để xem vấn đề được giải quyết.
EDIT: Câu hỏi này khác với "đến chi nhánh hay không phân nhánh." Nó đặc biệt đề cập đến những người chuyển sang sử dụng nhánh phát triển và những lý do xung quanh, vì điều đó được quảng cáo là một cách thực hành tốt nhất trong một thời gian dài.