Вы можете сделать вещи немного более эффективными, изменив команду hg log
на:
hg log -r : -l 1 $i --template "{files} {author} {rev}\n"
-r :
меняет порядок вывода журнала, а -l 1
показывает только первую запись в журнале; вместе они показывают самую раннюю ревизию любого имени файла в $i
. Переключатель --template
настраивает вывод, в данном случае я показываю имя файла, автора и ревизию, в которой был представлен файл. См. hg help templating
для получения дополнительной информации.
Другая оптимизация будет заключаться в использовании вывода hg manifest
, переданного по каналу xargs
; find -type f
вернет все файлы, поэтому если у вас есть объектные файлы или другие неотслеживаемые файлы в рабочем каталоге, вы будете без необходимости запускать на них hg log
.
К сожалению, это не поможет вам определить, куда люди скопировали файлы, не сообщив об этом Mercurial.