17 điểm bởi xguru 2026-02-28 | 5 bình luận | Chia sẻ qua WhatsApp
  • Công cụ thay thế pre-commit được tạo ra để tăng tốc độ và hiệu quả quản lý Git hook, đồng thời vẫn duy trì khả năng tương thích với cấu hình và hook hiện có
  • Được cung cấp dưới dạng tệp thực thi đơn viết bằng Rust, và rút ngắn thời gian cài đặt cũng như chạy hook thông qua kiến trúc xử lý song song
  • Đã được áp dụng trong các dự án lớn như CPython, Apache Airflow, FastAPI, Home Assistant
  • Hỗ trợ quản lý tích hợp toolchain đa ngôn ngữ như Python, Node.js, Go, Rust, Ruby
  • Tích hợp uv giúp tăng tốc tạo môi trường ảo Python và cài đặt phụ thuộc
  • Hỗ trợ sẵn môi trường workspace (monorepo), cho phép cấu hình theo từng dự án con
  • Cung cấp các lệnh CLI được cải tiến như prek run, prek list, prek auto-update
    • Với các tùy chọn --directory, --last-commit, có thể chỉ kiểm tra một thư mục cụ thể hoặc commit gần nhất
    • Với tùy chọn --cooldown-days, cung cấp tính năng giảm thiểu tấn công chuỗi cung ứng
  • Tích hợp sẵn một số hook phổ biến ở dạng native Rust, hỗ trợ chạy offline và không cần cấu hình
  • Giấy phép MIT
  • Được phát triển với cảm hứng từ dự án uv của Astral

5 bình luận

 
chebread 2026-02-28

Mình có điều thắc mắc muốn hỏi các bạn lập trình viên: tại sao dạo gần đây phần lớn các dự án lại thường được phát triển bằng Rust hơn là Golang? Lý do lớn nhất có phải là có hay không có GC không?

 
shoyuvanilla 2026-03-01

Dự án này có lẽ chưa đến mức GC trở thành vấn đề. Tôi nghĩ trong “phần lớn các dự án gần đây”, việc chọn ngôn ngữ lập trình trên thực tế thường thuộc phạm vi sở thích nhiều hơn là do ưu điểm hay giới hạn của một ngôn ngữ cụ thể; dù vậy, nếu hỏi Rust có ưu thế so sánh nào so với Go với tư cách là một ngôn ngữ lập trình đa dụng, thì tôi có lẽ sẽ trả lời rằng đó là mức độ trừu tượng mà Rust cung cấp và khả năng bắt được nhiều lỗi ngay tại thời điểm biên dịch. Tất nhiên, Go cũng có những ưu điểm so với Rust như lập trình bất đồng bộ dễ dàng, thời gian biên dịch nhanh và cú pháp ngắn gọn.

 
hungryman 2026-02-28

Chà, chỉ là suy đoán thôi, nhưng có lẽ là vì rào cản gia nhập với Rust đã biến mất. Khó khăn lớn nhất là viết code xong mà biên dịch cứ liên tục thất bại, nhưng giờ thì AI làm thay rồi.

 
click 2026-02-28

Mình có cảm giác Rust bắt được rất nhiều lỗi ngay từ lúc biên dịch, nên việc biên dịch thất bại đôi khi lại giúp AI đi đúng hướng hơn.

 
t7vonn 2026-02-28

Cái này khá ổn đấy.