Опираясь на ответ Джерома, вы получите копии файлов , которые изменились в редакции 4:
hg archive --type files --rev 4 -I $(hg log -r 4 --template {files} | sed 's/ / -I /g') ~/changedfiles
Это помещает все файлы, которые изменились в редакцию четыре, во вновь созданный каталог с именем changefiles в вашем homedir.
Если вы измените его на:
hg archive --type zip --rev 4 -I $(hg log -r 4 --template {files} | sed 's/ / -I /g') ~/changedfiles.zip
затем они появляются в zip-архиве.
Стоит отметить, что это работает, только если у вас нет пробелов в именах файлов. Если вы допустили эту ошибку, тогда нам нужно будет использовать hg status --print0 -r revision -r parent-of-revision
, но, надеюсь, в этом нет необходимости.
Обратите внимание, что номер ревизии, «4» в нашем примере, отображается дважды. Все это можно легко обернуть в сценарий оболочки, и это будет параметризовано, так что вам не нужно будет менять его в обоих местах.