2012-11-20 38 views
9

Có quy trình làm việc được đề xuất để làm việc với các chi nhánh tính năng git-flow trong Gerrit không? Bất kỳ phương pháp hay nhất nào?Quy trình làm việc với các chi nhánh tính năng luồng chảy và Gerrit

Chúng tôi đang bắt đầu một dự án với nhiều nhà phát triển và một kho lưu trữ trung tâm do Git quản lý. Chơi xung quanh với git-flow, tôi bị mắc kẹt với vấn đề đẩy các nhánh tính năng vào Gerrit như một cách để sao lưu công việc của nhà phát triển trong khi tính năng chưa hoàn thành:

Chúng tôi không muốn các chi nhánh đặc trưng được xem xét trong khi được phát triển để chúng tôi cho phép tất cả các nhà phát triển đẩy trực tiếp vào refs/heads/feature/*, phá vỡ nhánh đánh giá ma thuật. Chúng tôi muốn thực hiện đánh giá khi chi nhánh tính năng được hợp nhất vào chi nhánh phát triển, nhưng khi nhà phát triển đẩy công việc của cô ấy đến Gerrit sau khi hợp nhất này, chỉ có cam kết hợp nhất để xem xét. Những thay đổi được thực hiện trong nhánh tính năng KHÔNG xuất hiện trong tập bản vá này. Tôi cho rằng đó là vì những thay đổi này đã được đẩy trực tiếp đến ref/heads/feature/* nên Gerrit nghĩ rằng họ không cần xem xét nữa.

Nếu nhà phát triển thay vì đẩy chi nhánh tính năng vào Gerrit ngay trước khi hoàn thành chi nhánh tính năng? Để có thể làm được điều này, cô ấy sẽ cần các quyền để đẩy và tạo các tham chiếu trên refs/heads/feature/* và trên refs/for/refs/heads/feature/*, đảm bảo rằng cô chỉ push vào nhánh đánh giá.

Mọi trợ giúp sẽ được đánh giá rất nhiều.

Trả lời

2

Tích hợp luồng git và gerrit không thẳng về phía trước, khi đẩy nhánh bạn không thể thay đổi nguồn gốc trong luồng git để phản ánh nguồn gốc cần thiết để xem xét trong gerrit.

Tôi đọc một số wiki page nói về các phần phức tạp của việc tích hợp luồng và gerrit. Bạn cũng có thể muốn đọc nó.

+0

Xin lỗi tôi bị mất này một:.) https://github.com/marcricharme/gitflow Tôi thực sự được cập nhật một nhận xét về điều này, Nó hoạt động rất tốt, chúng tôi có 4-600 nhà phát triển tích cực sử dụng nó –

6

Tôi và một đồng nghiệp của tôi đã thực sự tạo ra một ngã ba cho git-flow với gerrit. Chúng tôi quyết định tiến lên phía trước với các nhánh được gọi là chủ đề để phân biệt các điều khiển truy cập cho các nhánh phát triển thường xuyên và "tính năng/chủ đề".

Hãy để tôi trao đổi với ông thứ hai và có được trở lại nơi mà chúng ta đang xuất bản tất cả mọi thứ để GitHub :)

tôi sẽ bắt đầu loại bỏ một số mặt hàng cụ thể công ty nhỏ trong mã nguồn và công bố để github. tôi sẽ bắt đầu vào ngày mai buổi sáng Bắc Kinh thời gian:)

Cuối cùng Bạn có thể kiểm ngã ba này của git-dòng chảy https://github.com/RasmusVoss/gitflow

Có một vài vật phẩm bạn cần phải đọc lên trên. https://github.com/RasmusVoss/gitflow/wiki

Để thấy sự khác biệt giữa thường xuyên git-dòng chảy và phiên bản này, Phiên bản này là chủ yếu cho các nhà phát triển làm việc với Gerrit, chúng tôi không sử dụng bất kỳ tính năng giải phóng của git-dòng chảy được nêu ra.

Chúc mừng.

+0

Rasmus , nghe có vẻ đầy hứa hẹn. Xin vui lòng cho tôi biết về ngã ba này càng sớm càng tốt. – usan

+0

Bạn có bất kỳ bản cập nhật nào cho điều này không? Cụ thể, cách bạn xử lý các bản phát hành và hotfix được hợp nhất?Cả hai đều được sáp nhập vào cả phát triển và làm chủ, và đó là nơi chúng tôi muốn kích hoạt đánh giá mã. –

+0

Xin chào, chúng tôi chỉ sử dụng nó cho các nhà phát triển để họ có thể tạo ra các chi nhánh, xóa các nhánh và sử dụng luồng git để tạo ra 1 cam kết từ nhánh luồng git. Khi nói đến hội nhập và các nhánh sửa chữa nóng, chúng tôi đang sử dụng tích hợp "thủ công", điều này là ổn cho chúng tôi vào lúc này. Nhưng chúng tôi đang theo mô hình phân nhánh của nvie. Vì vậy, chúng tôi chi nhánh ra, anh đào chọn và sáp nhập trở lại để phát triển. Nhưng chúng tôi không có git chảy todo đó. –

Các vấn đề liên quan