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

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 các thay đổi quan trọng, hãy viết một tài liệu thiết kế.
  4. Đảm bảo bạn đã ký Thoả thuận cấp phép cho người đóng góp.
  5. Chuẩn bị một lệnh cam kết git để triển khai tính năng. Đừ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 về cách triển khai các thay đổi mang tính đột phá.
  6. Tạo một yêu cầu kéo trên GitHub. Nếu bạn mới sử dụng GitHub, hãy đọc 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 cần đẩy lệnh cam kết của mình vào nhánh riêng của kho lưu trữ.
  7. Người duy trì Bazel sẽ chỉ định cho bạn một người xem xét trong vòng 2 ngày làm việc (không bao gồm các ngày lễ ở Hoa Kỳ và Đức). Nếu không được chỉ định người xem xét trong khoảng thời gian đó, bạn có thể yêu cầu một người bằng cách gửi email đến bazel-discuss@googlegroups.com.
  8. Làm việc với người xem xét để hoàn tất việc xem xét mã. Đối với mỗi thay đổi, hãy tạo một lệnh cam kết mới và đẩy lệnh đó để thực hiện các thay đổi đối với yêu cầu kéo. Nếu quá 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 việc 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.

    Điều này kích hoạt các lượt kiểm tra trước khi gửi nội bộ có thể đề xuất thêm các thay đổi. Nếu bạn chưa bày tỏ ý muố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 thay đổi sâu hơn hoặc bạn muốn áp dụng các thay đổi trực tiếp, thì bạn và người xem xét nên trao đổi rõ ràng về các lựa chọn ưu tiên trong nhận xét xem xét.

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