2012-01-20 31 views
28

Tôi đã xóa một trong các tệp trong kho lưu trữ cục bộ (chỉ ở mức hệ thống tệp, không sử dụng hg remove). Bây giờ tôi muốn lấy lại tập tin đó từ kho lưu trữ vào thư mục cục bộ của tôi. Khi tôi làm hg status, nó biết rằng tệp được xóa cục bộ, nhưng không có thay đổi nào được cam kết, đó là những gì tôi mong đợi.Tìm nạp tệp đã xóa cục bộ từ Mercurial

Trả lời

45
$ hg revert your-file 

sẽ khôi phục.

Chỉnh sửa: "hg Hoàn nguyên" thấy http://www.selenic.com/mercurial/hg.1.html#revert

+1

Ah yeah. Và tôi thấy hg 'revert --all' cũng vậy, nhưng đó là nút hạt nhân. Tôi đã sử dụng '--all' như tôi đã cố gắng để tránh gõ tên (trong trường hợp này thực sự dài) tên tập tin. Có một lệnh để kéo lại mọi thứ từ kho lưu trữ vào thư mục cục bộ, ngoại trừ các tệp đã thay đổi. Có lẽ đó là một cuộc thảo luận quá dài ... – ScrollerBlaster

4

cd để dir của bạn và làm để khôi phục tất cả các tập tin hoặc sử dụng bất kỳ mặt nạ thích hợp như * .java, vv .. Điều này sẽ chỉ có hiệu lực dir hiện tại (không chắc chắn về subdirs).

8

Sau đây sẽ trở lại tất cả các tập tin đã xóa trong repo hiện tại:

hg status -nd0|xargs -0 hg revert 
Các vấn đề liên quan