Как просмотреть историю изменений для файла Mercurial?

Для данного файла в хранилище Mercurial, как вы можете увидеть историю изменений?

И как вы можете изменить две версии файла?

В идеале все это делается с помощью визуальных инструментов (мы используем ExamDiff для выполнения других различий).

Я бы сказал, что это базовая функция управления исходным кодом, но я не могу понять, как это сделать с Mercurial.

Ответ 1

hg log file

hg diff -r 10 -r 20 file

Ответ 2

hgk extension дает вам команду hg view file, которая отображает визуальную историю, из которой вы можете произвольно изменять пару версий /vdiff.

TortoiseHg дает вам команду thg log file, которая делает то же самое, но выглядит лучше.

Ответ 3

Для удобства чтения

hg diff -r revision1:revision2 file

Если revision1 и revision2 могут быть тегом, changeet и т.д.

Ответ 4

Если вы используете TortoiseHg: Пользователи Windows могут использовать проводник Windows и просматривать историю изменений, щелкнув правой кнопкой мыши файл.

Для пользователей Linux вы можете сделать это в TortoiseHg, но мне потребовалось некоторое время, чтобы выяснить, как это сделать. Вам нужно щелкнуть правой кнопкой мыши по нужному файлу и выбрать "История файлов". Однако по какой-то загадочной причине файл должен быть неизменным. Кроме того, для поиска нужного файла есть два варианта:

В ### revision set query### можно ввести:

file("**<myfile>")

Для поиска каталогов рекурсивно требуется двойное **. Это дает вам сразу список всех репозиториев, в которых был изменен желаемый файл.

В качестве альтернативы, рядом с ### filter text ### сначала щелкните знак знака вопроса и выберите "очистить", чтобы просмотреть все файлы в репозитории. Затем внутри поля ### filter text ### вы можете сузить количество отображаемых файлов.

В качестве альтернативы пользователи Linux могут делать это с терминала, как предположил Джеффри Чжэн выше:

thg log file