Как получить список последнего числа пересмотра для каждого файла в Подвижном репозитории?

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

hg log --template '{rev}\n' path-to-file

Выполнение hg для каждого файла является действительно трудоемким. Существует ли быстрый способ перечислить все файлы в репозитории с последним числом пересмотра?

7
задан Kimble 6 April 2010 в 12:49
поделиться

2 ответа

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

hg grep --all '.' | perl -na -F: -e 'next unless ($F[2] eq "+"); print "$F[0] $F[1]\n" unless ($prev eq $F[0]); $prev = $F[0]'

Пример:

that 3
file 1
2
ответ дан 7 December 2019 в 09:59
поделиться

Кодирование такой команды на Python с помощью синтаксического анализа hg annotate или в качестве расширения Mercurial не должно быть слишком сложным. Следующее обсуждение ртутного списка рассылки кажется разумным решением, хотя я его не пробовал.

2
ответ дан 7 December 2019 в 09:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: