Меркуриал - все файлы, которые изменились в наборе?


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

Я не ищу различий в этом случае, просто список добавления/удаления/модификации.

hg log -vprX есть ли список различий, но я просто хочу файлы.

7 80

7 ответов:

Если вы хотите перечислить только файлы, которые изменились, то вы должны использовать " status command" Ниже перечислены изменения в файлах в редакции REV

hg status --change REV

просто удалить p из своего hg log -vpr появится список файлов. -p значит показать патч. Вы также можете использовать шаблон для вывода на свой вкус.

Я знаю, что вопрос касается одного набора изменений, но если вы хотите, чтобы все файлы были изменены для ряда наборов изменений, вы можете сделать

hg status --rev 1 --rev 10 -m

нашел этот вопрос через Google для аналогичной концепции. Чтобы показать все файлы, которые изменились через ряд изменений, это так же просто, как:

hg log -r [start rev]:[end rev] --template "{file_mods}{file_adds}\n" | sed -e 's/ /\n/g' | sort -d | uniq
  1. hg log -r [start rev]:[end rev] --template "{file_mods}{file_adds}\n" покажет вам список каждого файла, измененного или добавленного в каждом наборе изменений, от [start rev] до [end rev], с файлами каждого набора изменений в новой строке. Своп {file_mods}{file_adds} С {files} чтобы показать все файлы, измененные, добавленные или удаленные.
  2. sed -e 's/ /\n/g' разделит все файлы показать отдельные строки и
  3. sort будет, э-э, сортировать список для вас, чтобы мы могли фильтровать список с uniq
  4. uniq будет фильтровать список, чтобы удалить дубликаты-файлы, которые изменились более чем на одну ревизию.

Текущая Зафиксированная Ревизия

hg status --change .

. является сокращением для текущего оборота, так же, как @HEAD в Git

Текущая Незафиксированная Ревизия

hg status

Произвольная Совершенная Ревизия

hg status --change REV_ID

Я знаю, что этот вопрос-старый вопрос, и я удивлен, что никто просто не предложил измененную форму кода OP. я получил список измененных/добавленных / удаленных файлов (не помеченных, что есть что), просто запустив hg log -v. Или то, что мне на самом деле нужно hg log -v -l5 чтобы увидеть файлы, которые были изменены/добавлены/удалены в последние 5 коммитов (включая те, которые я еще не нажимал на репо).

Если вы похожи на большинство магазинов, вы используете систему продажи билетов для отслеживания изменений. Если вы знаете номер билета и хотите найти все фиксации, связанные с этим билетом (при условии, что вы включаете номер билета в сообщение фиксации), вы можете использовать:

hg log -k TICKET_NUMBER

здесь отображаются все изменения, связанные с билетом. Однако он не перечисляет файлы. Вы можете использовать один из ответов выше, чтобы затем получить список файлов, связанных с переделки.

чтобы сделать его проще, хотя, объединяя информацию из предыдущих ответов, вы можете сделать следующее для поиска коммитов, включая измененные файлы:

hg log -vk TICKET_NUMBER