Как найти и восстановить удаленный файл
На каком-то этапе в прошлом у меня был "foo.txt", который находился под контролем Mercurial. Однако он теперь удален.
Как восстановить файл, если я не знаю последнюю версию Mercurial, в которой был удален файл?
Ответы
Ответ 1
Если вам известен точный путь к файлу, вы можете сделать что-то вроде:
hg log -l 1 path/to/foo.txt
Это покажет вам последний набор изменений, где foo.txt
был изменен, поэтому вы сможете восстановить файл из этой версии.
После правильной ревизии вы можете просто сделать:
hg revert -r <my revision> path/to/foo.txt
hg commit -m "add the foo.txt file again"
Ответ 2
Использование revsets:
hg log -r "removes('path_to_file')"
Где path_to_file
может быть документировано в hg help patterns
, включая точный путь, глобус или регулярное выражение.
Изменить. Включен комментарий Брайана о размещении path_to_file
в одинарных кавычках.