Tạo phiên bản

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

Bazel 4.0 trở lên hỗ trợ 2 kênh phát hành: bản phát hành hỗ trợ dài hạn (LTS) và bản phát hành liên tục. Trang này trình bày về việc quản lý phiên bản trong Bazel, các loại bản phát hành và lợi ích của những bản phát hành đó đối với người dùng và người đóng góp Bazel.

Tìm hiểu về việc tạo phiên bản trên Bazel

Bazel sử dụng một lược đồ định phiên bản ngữ nghĩa major.minor.patch.

  • Bản phát hành chính có những tính năng không tương thích ngược với bản phát hành trước.
  • Bản phát hành phụ chứa các tính năng mới tương thích ngược.
  • Bản phát hành vá lỗi chứa các thay đổi nhỏ và bản sửa lỗi.

Lấy phiên bản 3.5.1 làm ví dụ, một bản phát hành mới của mỗi loại sẽ dẫn đến những số phiên bản sau:

  • Nghiêm trọng: 4.0
  • Nhỏ: 3,6
  • Bản vá: 3.5.2

Chu kỳ phát hành của Bazel

Bazel liên tục phát hành các bản phát hành liên tục. Mỗi phiên bản chính đều là một bản phát hành LTS. Bạn có thể chọn tuân theo một trong hai nhịp phát hành: cập nhật từ bản phát hành LTS này sang bản phát hành LTS tiếp theo hoặc cập nhật theo từng bản phát hành phiên bản phụ.

Hình ảnh này cho thấy cả bản phát hành liên tục và bản phát hành LTS, cũng như mức hỗ trợ dự kiến cho từng bản.

Lộ trình

Hình 1. Bản phát hành Rolling và LTS.

Phát hành các nhánh

Mỗi phiên bản chính sẽ trở thành một nhánh phát triển riêng biệt khi phát hành. Bạn có thể nhận các bản sửa lỗi cho những lỗi nghiêm trọng trên nhánh đó mà không cần phải cập nhật lên bản phát hành Bazel ở đầu. Các tính năng bổ sung trên nhánh phiên bản chính sẽ trở thành các bản phát hành phụ và phiên bản cao nhất trên nhánh là phiên bản được hỗ trợ.

Mỗi bản phát hành Bazel đều đi kèm với danh sách các phiên bản quy tắc được đề xuất hoạt động cùng nhau và có khả năng tương thích ngược nghiêm ngặt trong mỗi nhánh.

Bản phát hành LTS

Bản phát hành LTS là một phiên bản chính (chẳng hạn như 4.0) được hỗ trợ trong 3 năm sau khi phát hành. Một phiên bản chính được phát hành khoảng 9 tháng một lần.

Việc tiếp tục phát triển trên một nhánh phát hành sẽ tạo ra các phiên bản nhỏ.

Bạn có thể chọn ghim dự án của mình vào một bản phát hành chính và cập nhật lên phiên bản mới hơn vào thời gian phù hợp với bạn. Nhờ đó, bạn có thời gian xem trước các thay đổi sắp tới và điều chỉnh cho phù hợp từ trước.

Bản phát hành liên tục

Các bản phát hành liên tục được cắt định kỳ từ nhánh chính của Bazel. Nhịp độ phát hành này bao gồm việc phân phối liên tục các bản phát hành xem trước của phiên bản Bazel chính tiếp theo, đồng bộ với các bản phát hành Blaze nội bộ của Google.

Xin lưu ý rằng bản phát hành liên tục mới có thể chứa các thay đổi mang tính đột phá không tương thích với các bản phát hành trước đó.

Các bản phát hành từng phần được kiểm thử trên bộ kiểm thử của Bazel trên Bazel CI và bộ kiểm thử nội bộ của Google. Bạn có thể dùng các cờ không tương thích để giảm bớt gánh nặng khi di chuyển sang chức năng mới, nhưng hành vi mặc định có thể thay đổi theo bất kỳ bản phát hành nào. (Bạn cũng có thể sử dụng bản phát hành liên tục để xem trước phiên bản LTS tiếp theo. Ví dụ: 5.0.0-pre.20210604.6 dựa trên một bản cắt đề xuất vào ngày 04/06/2021 và thể hiện một cột mốc hướng tới bản phát hành LTS 5.0.)

Bạn có thể tải bản phát hành mới nhất xuống từ GitHub. Ngoài ra, bạn có thể thiết lập Bazelisk phiên bản 1.9.0 (hoặc phiên bản mới hơn) để sử dụng một tên phiên bản cụ thể hoặc mã nhận dạng "rolling" (phát hành liên tục) sử dụng bản phát hành liên tục gần đây nhất. Để biết thêm thông tin chi tiết, hãy xem tài liệu về Bazelisk.

Cập nhật phiên bản

  • Để biết thêm thông tin về cách cập nhật phiên bản Bazel, hãy xem phần Cập nhật Bazel.
  • Để biết thêm thông tin về cách đóng góp nội dung cập nhật cho các bản phát hành Bazel mới, hãy xem phần Đóng góp cho Bazel.