Quy trình chấp nhận bản vá

Báo cáo vấn đề Xem nguồn Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

Trang này trình bày cách người đóng góp có thể đề xuất và thực hiện các thay đổi đối với cơ sở mã Bazel.

  1. Đọc Chính sách đóng góp cho Bazel.
  2. Tạo một vấn đề trên GitHub để thảo luận về kế hoạch và thiết kế của bạn. Các yêu cầu kéo thay đổi hoặc thêm hành vi cần có một vấn đề tương ứng để theo dõi.
  3. Nếu bạn đề xuất những thay đổi đáng kể, hãy viết một tài liệu thiết kế.
  4. Đảm bảo rằng bạn đã ký Thoả thuận cấp phép cho cộng tác viên.
  5. Chuẩn bị một cam kết git triển khai tính năng này. Đừng quên thêm các bài kiểm thử và cập nhật tài liệu. Nếu thay đổi của bạn có ảnh hưởng đến người dùng, vui lòng thêm ghi chú phát hành. Nếu đó là một thay đổi không tương thích, hãy đọc hướng dẫn triển khai các thay đổi có thể gây lỗi.
  6. Tạo yêu cầu kéo trên GitHub. Nếu bạn mới sử dụng GitHub, hãy đọc giới thiệu về yêu cầu kéo. Xin lưu ý rằng chúng tôi hạn chế quyền tạo nhánh trên kho lưu trữ Bazel chính, vì vậy, bạn sẽ cần đẩy cam kết của mình vào phân nhánh kho lưu trữ của riêng bạn.
  7. Người duy trì Bazel sẽ chỉ định cho bạn một người đánh giá trong vòng 2 ngày làm việc (không tính ngày lễ ở Hoa Kỳ và Đức). Nếu không được chỉ định người đánh giá trong thời gian đó, bạn có thể yêu cầu người đánh giá bằng cách gửi email đến bazel-discuss@googlegroups.com.
  8. Làm việc với người đánh giá để hoàn tất quy trình đánh giá mã. Đối với mỗi thay đổi, hãy tạo một cam kết mới và đẩy cam kết đó để thực hiện các thay đổi đối với yêu cầu kéo của bạn. Nếu quy trình xem xét mất quá nhiều thời gian (ví dụ: nếu người xem xét không phản hồi), hãy gửi email đến bazel-discuss@googlegroups.com.
  9. Sau khi bạn hoàn tất quy trình xem xét, người duy trì Bazel sẽ áp dụng bản vá của bạn cho hệ thống kiểm soát phiên bản nội bộ của Google.

    Thao tác này sẽ kích hoạt các bước kiểm tra nội bộ trước khi gửi có thể đề xuất thêm các thay đổi. Nếu bạn chưa bày tỏ ý kiến ưu tiên, người duy trì gửi thay đổi của bạn sẽ thêm các thay đổi "không đáng kể" (chẳng hạn như linting) không ảnh hưởng đến thiết kế. Nếu cần thực hiện các thay đổi sâu hơn hoặc bạn muốn áp dụng trực tiếp các thay đổi, thì bạn và người đánh giá nên trao đổi rõ ràng về các lựa chọn ưu tiên trong phần nhận xét đánh giá.

    Sau khi gửi nội bộ, bản vá sẽ được xuất dưới dạng một cam kết Git, tại thời điểm đó, yêu cầu kéo GitHub sẽ bị đóng. Mọi thay đổi cuối cùng đều được ghi nhận là do bạn thực hiện.