Một ngày nọ tôi đang sử dụng Git (tôi vẫn đang sử dụng nó) và điện bị tắt trong khi tôi đang cam kết.
Khi tôi (thực sự, điện) trở lại, repo git đã bị hỏng. Tôi không nhớ tên chính xác, nhưng nó là một cái gì đó như "refs không hợp lệ" hoặc đại loại như thế.
Thật dễ dàng để đoán rằng cam kết đã bị hỏng ở giữa hoạt động (Tôi đã cam kết thông qua IntelliJ, chỉ số này tự động bổ sung). Thật dễ dàng để đoán rằng, trên thực tế, 'commit' không phải là ACID như hoạt động DBMS có cùng tên.
Q : Có cách nào để đảm bảo các hoạt động thay đổi repo tôn trọng tính nguyên tử không? tức là nếu điện bị tắt lần nữa và tôi cam kết, tôi muốn hệ thống tập tin của mình không ở trạng thái hỏng.