2013-11-22 14 views
5

Vì vậy, tôi khá thông thạo với git nói chung nhưng tôi chưa bao giờ sử dụng quy trình làm việc dựa trên nhánh và chủ yếu là với Gerrit. Tôi khá mới mẻ với Pull Requests.Xử lý các yêu cầu kéo bị từ chối/từ chối

Yêu cầu kéo chủ yếu giống với tôi như một chi nhánh được đẩy tới Gerrit, đang chờ xem xét. Trong Gerrit, nếu có vấn đề với một trong các cam kết của tôi, các nhận xét được để lại trên nó và nó nhận được một điểm không tích cực. Với một nhận xét yêu cầu kéo có thể được để lại trên nó và nó có thể bị từ chối. Trong Gerrit, để giải quyết các vấn đề các ý kiến ​​nêu ra, tôi sửa đổi (các) cam kết vi phạm và đẩy chúng lên một lần nữa (tốt, các cam kết mới với cùng một Thay đổi-Id). Tôi phải làm gì để cập nhật Yêu cầu kéo? Chỉ cần đẩy một cam kết sửa chữa trên đầu trang? Hủy yêu cầu kéo (điều này có thể không?), Sửa đổi cam kết của tôi và đẩy lên một yêu cầu mới?

Chúng tôi đang sử dụng Bitbucket cho dự án của mình và ngay bây giờ chúng tôi đang lập kế hoạch tránh dĩa và chỉ yêu cầu kéo để làm chủ (nhánh "sản xuất") của chúng tôi từ các chi nhánh, chủ yếu là vì cảm giác gần gũi hơn với những gì tôi ' m quen thuộc với.

Trả lời

2

Tôi phải làm gì để cập nhật Yêu cầu kéo? Chỉ cần đẩy một cam kết sửa chữa trên đầu trang?

On GitHub, vâng, bạn có thể thêm các cam kết mới, hoặc bao giờ sắp xếp lại/modifiy các hiện cam kết của chi nhánh chuyên dụng của bạn, Lực đẩy chi nhánh đó để ngã ba của bạn (git push --force) và ...:
Các hiện Yêu cầu kéo sẽ được cập nhật, mọi công việc Travis CI sẽ chạy lại và người bảo trì bản gốc sẽ được thông báo.

Nhưng ngay cả trên BitBucket, yêu cầu kéo là cho các cam kết được đề xuất từ ​​một ngã ba, không phải từ một chi nhánh từ cùng một repo.
Xem "Fork a Repo, Compare Code, and Create a Pull Request"

Các pro là chủ yếu để ngăn ngừa những người đóng góp để sửa đổi một repo, và buộc họ phải làm việc trong repo của mình (ngã ba, mà họ sau đó sao chép vào máy tính cục bộ của họ).

+0

Yêu cầu kéo BitBucket có thể được thực hiện từ các chi nhánh (xem [Kéo yêu cầu qua các nhánh) [http://blog.bitbucket.org/2012/02/01/pull-requests-across-branches/]). Tôi đã thử nghiệm một chút với lực đẩy vào đêm qua và không thể nhận được yêu cầu kéo hiện tại để cập nhật - nó vừa mới tạo một yêu cầu mới. Không chắc chắn nếu tôi đã làm điều gì đó sai, hoặc tính năng đó chỉ hoạt động với dĩa. –

+0

@Peregrinati Có, nút "Yêu cầu kéo cập nhật" dường như chỉ ở đó nếu chi nhánh đã được rebase. – VonC

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