Tôi biết, tôi biết, git revert
nhưng tôi mới biết rằng nó không hoạt động giống hệt như - svn revert
ít nhất, không phải trong Visual Studio 2015, hoặc có thể không có trong TortoiseGit. Tôi sẽ giải thích:
Tôi mới dùng VS2015 cũng mới dùng Git. Khi tôi phát hiện ra rằng VS2015 có tích hợp Git ngay lập tức, tôi đã dùng thử. Tuy nhiên, tôi đã làm việc trên một số tệp và tôi đã sẵn sàng cam kết chỉ một trong số đó. Thật không may, bộ lọc mà tôi đã áp dụng trong ngăn Team Explorer không áp dụng cho các tệp đã được cam kết (tôi đoán đó là lý do tại sao tiêu đề của nút là "Cam kết tất cả"). Thay vào đó, nó cam kết tất cả các tệp "bẩn" - rất tiếc!
Dựa vào TortoiseGit để xem nhật ký của repo của tôi, tôi đã chọn cam kết (cục bộ) gần đây nhất và hoàn nguyên nó thông qua "Hoàn nguyên các thay đổi của cam kết này". Tôi đã dự kiến rằng thao tác này sẽ hoàn nguyên các tệp mà tôi đang làm việc để trở về trạng thái "bẩn" mà chúng đã ở trước khi tôi cam kết, giống như những gì một SVN Revert làm, nhưng thật ngạc nhiên, hoạt động này đã hoàn nguyên các tệp cục bộ của tôi phiên bản repo trước đó , không ở trạng thái trước khi tôi cam kết.
Tất nhiên, tôi đã có thể truy xuất tác phẩm của mình vì tất cả đều nằm trong bản sửa đổi "tất cả các tệp" mà tôi đã cam kết ban đầu. Tôi chỉ thiết lập để sao chép từng tập tin từ nó vào thư mục hợp pháp của nó. Nhưng tôi còn thiếu gì ở đây? Có tính năng Git nào mà tôi nên sử dụng thay vì Revert không?
--mixed
là mặc định và danh sách các thay đổi là (AFAIK) là một điều tương đối mới - nó được sử dụng để yêu cầugit commit -v
trước đây, phải không?