Как вы можете определить все файлы, которые были изменены в данном наборе изменений?
Я не ищу diff в этом случае, просто список добавлений/удалений/модификаций.
hg log -vprX
содержит список различий, но я просто хочу файлы.
Как вы можете определить все файлы, которые были изменены в данном наборе изменений?
Я не ищу diff в этом случае, просто список добавлений/удалений/модификаций.
hg log -vprX
содержит список различий, но я просто хочу файлы.
Если вы хотите перечислить только файлы, которые были изменены, вы должны использовать команду "status", Ниже перечислены изменения файлов в версии REV
hg status --change REV
Просто удалите p
из вашего hg log -vpr
, показывая список файлов. -p
означает патч. Вы также можете использовать шаблон для форматирования вывода по своему вкусу.
Я знаю, что вопрос касается одного набора изменений, но если вы хотите, чтобы все файлы были изменены для ряда наборов изменений, вы можете сделать
hg status --rev 1 --rev 10 -m
Нашел этот вопрос через Googling для аналогичной концепции. Чтобы показать все файлы, которые были изменены с помощью ряда наборов изменений, это просто:
hg log -r [start rev]:[end rev] --template "{file_mods}{file_adds}\n" | sed -e 's/ /\n/g' | sort -d | uniq
hg log -r [start rev]:[end rev] --template "{file_mods}{file_adds}\n"
покажет вам список каждого файла, который был изменен или добавлен в каждый набор изменений, начиная с [start rev] до [end rev], с каждым файлом набора изменений на новой строке. Swap {file_mods}{file_adds}
с помощью {files}
, чтобы показать все файлы, измененные, добавленные или удаленные.sed -e 's/ /\n/g'
разделит все файлы на отдельные строки иsort
будет, er, сортировать список для вас, чтобы мы могли отфильтровать список с помощью uniquniq
будет фильтровать список для удаления дубликатов файлов, которые были изменены более чем в одной версии.Если вы похожи на большинство магазинов, вы используете систему билетов для отслеживания изменений. Если вы знаете номер билета и хотите найти все коммиты, связанные с этим билетом (при условии, что вы включаете номер билета в сообщении фиксации), вы можете использовать:
hg log -k TICKET_NUMBER
Это отображает все изменения, связанные с билетом. Однако он не перечисляет файлы. Вы можете использовать один из приведенных выше ответов, чтобы получить список файлов, связанных с изменениями.
Чтобы упростить работу, объединив информацию из предыдущих ответов, вы можете выполнить следующие действия для поиска коммитов, включая измененные файлы:
hg log -vk TICKET_NUMBER
Я знаю, что этот вопрос - старый вопрос, и я удивлен, что никто не предлагал модифицированную форму кода OP. Я получил список файлов с измененными/добавленными/удаленными файлами (не помеченными как это), просто запустив hg log -v
. Или что мне действительно нужно hg log -v -l5
, чтобы увидеть файлы, которые были изменены/добавлены/удалены в последние 5 коммитов (включая те, которые я еще не нажал на репо).