Tôi không thấy vấn đề ở đây.
Bạn đã có điều này mỗi lần với master
chi nhánh của mình , nó luôn thay đổi trong khi các tính năng được phát triển và sau đó được hợp nhất.
Vì vậy, trong ví dụ cụ thể của bạn, trước tiên bạn tạo feature_xxx_backend
chi nhánh và phát triển các thay đổi phụ trợ. Khi điều này được thực hiện, chi nhánh sẽ được xem xét và sẽ được hợp nhất vào master
khi hoàn thành đánh giá.
Vì vậy, chỉ cần bắt đầu một chi nhánh khác feature_yyy_frontend
,. Bạn có thể sẽ muốn phân nhánh trực tiếp từ đó feature_xxx_backend
, để bạn có những thay đổi đó trong tài khoản của bạn. sau đó chỉ cần phát triển tính năng frontend như chi nhánh master
.
Khi feature_xxx_backend
chi nhánh thay đổi, ví dụ vì có những thứ xuất hiện trong quá trình xem xét cần phải được quảng cáo, chỉ cần thực hiện những thay đổi này và hợp nhất chúng vào feature_yyy_frontend
chi nhánh. Sau đó tiếp tục trên nhánh frontend.
Khi đánh giá của nhánh phụ trợ được hoàn thành, nó sẽ được hợp nhất vào master
. Tại thời điểm này, nó sẽ là khôn ngoan để rebase các feature_yyy_frontend
chi nhánh lên master
, vì vậy mà các nhà phê bình chỉ cần xem lại mới thay đổi mà chi nhánh này góp phần vào việc master
, và không cần phải xem lại lần nữa những thay đổi được thực hiện cho các phụ trợ (đã được phê duyệt ).
Điều này cũng có thể được thực hiện khi bạn có hai, ba hoặc nhiều nhánh phụ thuộc. Nếu bạn có hai nhánh tính năng mà bạn phụ thuộc, đơn giản hãy tạo một nhánh dẫn xuất có cả hai tính năng được hợp nhất. Chi nhánh từ đó, phát triển tính năng thứ ba, hợp nhất cả hai nhánh tính năng trên đường đi khi mỗi nhánh đó thay đổi. Khi cả hai tính năng được thực hiện và được hợp nhất vào nhánh dẫn xuất, hãy khởi động lại vào đó hoặc nếu chúng được hợp nhất thành chủ, hãy khởi động lại thành chủ.
Rebasing (như được đề xuất ở trên) thực sự mạnh mẽ và giúp giữ một bản ghi rõ ràng về các thay đổi, giúp việc đánh giá dễ dàng hơn nhiều.