Phát hành hệ thống kiểm soát nguồn phân tán Git 2.23

giới thiệu phát hành hệ thống kiểm soát nguồn phân tán Git 2.23.0. Git là một trong những hệ thống kiểm soát phiên bản phổ biến, đáng tin cậy và hiệu suất cao cung cấp các công cụ phát triển phi tuyến tính linh hoạt dựa trên việc phân nhánh và hợp nhất các nhánh. Để đảm bảo tính toàn vẹn của lịch sử và khả năng chống lại những thay đổi trong nhận thức muộn, hàm băm ngầm định của toàn bộ lịch sử trước đó trong mỗi lần xác nhận được sử dụng, cũng có thể xác minh chữ ký số của nhà phát triển các thẻ và lần xác nhận riêng lẻ.

So với phiên bản trước, phiên bản mới bao gồm 505 thay đổi, được chuẩn bị với sự tham gia của 77 nhà phát triển, trong đó 26 nhà phát triển lần đầu tiên tham gia phát triển. Nền tảng đổi mới:

  • Các lệnh "git switch" và "git Restore" thử nghiệm được giới thiệu để phân tách các khả năng "gitcheck" được liên kết lỏng lẻo, chẳng hạn như thao tác nhánh (chuyển đổi và tạo) và khôi phục các tệp trong thư mục làm việc ("gitcheck $commit - $filename") hoặc ngay lập tức trong khu vực tổ chức (“—staging”, không có từ tương tự trong “gitcheck”). Điều đáng lưu ý là, không giống như "gitcheck", "git Restore" sẽ xóa các tệp không bị theo dõi khỏi các thư mục đang được khôi phục ("--no-overlay" theo mặc định).
  • Đã thêm tùy chọn “git merge –quit”, tương tự như “-abort”, dừng quá trình hợp nhất các nhánh nhưng không chạm vào thư mục làm việc. Tùy chọn này có thể hữu ích nếu một số thay đổi được thực hiện trong quá trình hợp nhất thủ công sẽ được ưu tiên đưa ra dưới dạng một cam kết riêng biệt.
  • Các lệnh "git clone", "gitfetch" và "git Push" hiện tính đến sự hiện diện của các xác nhận trong kho được liên kết (luân phiên);
  • Thêm tùy chọn “git đổ lỗi —ignore-rev” và “—ignore-revs-file” cho phép bạn bỏ qua các cam kết thực hiện các thay đổi nhỏ (ví dụ: sửa lỗi định dạng);
  • Đã thêm tùy chọn “git Cherry-pick —skip” để bỏ qua một cam kết xung đột (một dạng tương tự được ghi nhớ của chuỗi “git reset && git Cherry-pick —continue”);
  • Đã thêm cài đặt status.aheadBehind, giúp khắc phục vĩnh viễn tùy chọn “trạng thái git -[no-]ahead-behind”;
  • Kể từ bản phát hành này, "git log" theo mặc định sẽ tính đến các thay đổi do mailmap thực hiện, tương tự như cách git shortlog đã thực hiện;
  • Hoạt động cập nhật bộ đệm thử nghiệm của biểu đồ cam kết (core.commitGraph) được giới thiệu trong 2.18 đã được tăng tốc đáng kể. Đồng thời làm cho git for-each-ref nhanh hơn khi sử dụng nhiều mẫu và giảm số lượng lệnh gọi tới auto-gc trong “gitfetch —multiple”;
  • "git Branch --list" hiện luôn hiển thị HEAD tách rời ở đầu danh sách, bất kể ngôn ngữ.

Nguồn: opennet.ru

Thêm một lời nhận xét