Git 2.46 ra mắt với những cải tiến, sửa lỗi và loại bitmap mới

git 2.46

Phiên bản mới của Git 2.46 ra mắt sau ba tháng phát triển và trong bản phát hành mới này, một số cải tiến và tính năng mới quan trọng đã được tích hợp chẳng hạn như hỗ trợ thử nghiệm cho một loại bitmap mới, các cải tiến đối với phần phụ trợ thử nghiệm "có thể hoàn lại", giao diện dòng lệnh mới cho lệnh “git config”, cùng với những thứ khác.

Phiên bản mới này của Git 2.46 bao gồm các bản sửa lỗi từ hơn 96 người đóng góp, 31 trong số đó mới và như vậy, phiên bản mới chứa 746 thay đổi.

Các tính năng mới chính trong Git 2.46

Hỗ trợ thử nghiệm cho “bitmap khả năng tiếp cận giả tạo” là một trong những phát triển quan trọng nhất của bản phát hành này và loại bitmap mới nàyvà khác với cấu trúc truyền thống "bitmap khả năng truy cập" bằng cách lưu trữ dữ liệu về các tập hợp đối tượng liên quan đến cam kết không phải cho từng cam kết riêng lẻ mà cho một số cam kết cùng một lúc.

Như vậy, bitmap khả năng tiếp cận giả hợp nhất này cho phép sử dụng một bitmap duy nhất để xác định các đối tượng trong các cam kết của các nhánh khác nhau, dẫn đến cải thiện hiệu suất đáng kể, đặc biệt là trên các kho lưu trữ lớn. Điều này tăng tốc các hoạt động như git tìm nạp, git rev-list và git clone bằng cách giảm nhu cầu tạo nhiều bitmap riêng biệt.

Git 2.46 cũng giới thiệu một số cải tiến quan trọng cho giao diện dòng lệnh của nó và trong việc quản lý thông tin xác thực và lưu trữ dữ liệu. Giao diện dòng lệnh cho lệnh git config đã được thiết kế lại, thay thế các tùy chọn khác nhau như –get, –get-all, –unset và –remove-section với một tập hợp các lệnh phụ trực quan hơn. Ví dụ: để hiển thị tất cả các cấu hình kho lưu trữ, bây giờ bạn có thể sử dụng lệnh “danh sách cấu hình git« và để xem nội dung của một tham số cụ thể, giờ đây bạn có thể sử dụng lệnh «cấu hình git nhận ». Để lọc thêm kết quả, bạn có thể sử dụng tùy chọn “–regexp” để chỉ định bộ lọc dựa trên biểu thức chính quy.

Ngoài ra, trong giao thức «người trợ giúp thông tin xác thực" đã thêm hỗ trợ cho các trường "authtype" và "thông tin xác thực" mới, cho phép bạn tạo trình xử lý cho hệ thống xác thực HTTP thực hiện nhiều chức năng hơn là chỉ xác minh tên người dùng và mật khẩu, chẳng hạn như khi sử dụng Mã thông báo Bearer trong OAuth 2.0. Và trước đó, Để làm việc với các hệ thống xác thực như vậy, cần phải chỉ định dữ liệu bí mật ở dạng văn bản rõ ràng trong tham số http.extraHeader. Bên cạnh đó, giao thức bổ sung khả năng duy trì trạng thái của từng bộ điều khiển thông tin xác thực để hỗ trợ các phương thức xác thực đa yếu tố được sử dụng trong các giao thức như NTLM và Kerberos.

Mặt khác, sự phát triển của phần phụ trợ thử nghiệm "có thể thay đổi" đã được cải thiện để lưu trữ hiệu quả các liên kết đến các nhánh và thẻ trong kho lưu trữ. Phiên bản mới bổ sung lệnh “git refs di chuyển –ref-format=reftable” để di chuyển các kho lưu trữ hiện có sang phần phụ trợ “có thể thay đổi được” (trước đây, phần phụ trợ chỉ được bật khi kho lưu trữ được khởi tạo).

Cũng, Trong Git 2.46, quá trình chuyển đổi một số thử nghiệm từ bộ thử nghiệm đã được bắt đầu, đến việc sử dụng các bài kiểm tra đơn vị. Điều này nhằm đơn giản hóa việc kiểm tra các thành phần cấp thấp và sẽ tăng hiệu quả của quy trình kiểm tra trên nền tảng Windows, tạo ra chi phí lớn khi chạy một số quy trình trên nền tảng lớn trong quá trình thực hiện kiểm tra được triển khai trong các tập lệnh shell .

Của những thay đổi khác nổi bật của phiên bản mới này:

  • Đã thêm tùy chọn “–no-Advice” vào lệnh git, tùy chọn này sẽ vô hiệu hóa tất cả các thông báo lời khuyên và gợi ý, điều này có thể hữu ích để ngăn nhật ký khỏi bị tắc do thông tin không cần thiết trong lệnh gọi git push.
  • Đã thêm khả năng sử dụng biểu diễn “#RGB” ngoài biểu diễn “#RRGGBB” trong mã để phân tích cài đặt màu.
  • Khi git merge thấy chỉ mục không thể cập nhật được (ví dụ do
    sang một quy trình khác thực hiện điều tương tự trong nền)
  • Macro CPP USE_THE_REPOSITORY_VARIABLE được giới thiệu để giúp chuyển đổi cơ sở mã để ít phụ thuộc hơn vào tính khả dụng của phiên bản đơn the_repository.
  • “git version –build-options” báo cáo thông tin phiên bản của
  • OpenSSL và các thư viện khác (nếu được sử dụng) trong build.
  • Đã sửa lỗi rò rỉ bộ nhớ trong "git mv"
  • Đã cập nhật hỗ trợ hoàn thành dòng lệnh cho zsh (trong contrib/)
    để ngừng hiển thị trạng thái bên trong cho tương tác shell của người dùng cuối

Cuối cùng nếu bạn muốn biết thêm về nó, bạn có thể kiểm tra các chi tiết trong liên kết theo dõi.