Mercurial понимает несколько форм задания одного или более файла единовременно.
По умолчанию Mercurial интерпретирует имена файлов как это делает командная оболочка (bash и др.), выполняя подстановку шаблонов в стиле glob.
Другая форма шаблонов должна указываться явно.
Примечание:
Шаблоны, заданные в ".hgignore", не привязаны к корневому каталогу. См. "hg help hgignore".
Чтобы использовать буквальный путь к файлу, в котором не выполняются подстановки, начните его с "path:". Такие пути должны полностью совпадать с именем файла относительно корня хранилища.
Чтобы использовать расширенный glob, начните его с "glob:". Глобы раскрываются относительно текущего каталога; глоб "*.c" совпадет только с файлами в текущем каталоге, оканчивающимися на ".c".
Поддерживается расширение обычных глобов в виде "**", которое совпадает с любой строкой в пределах всего пути, включая разделители; также поддерживается форма "{a,b}", означающая "a или b".
Чтобы использовать регулярные выражения Perl/Python, начните имя с "re:". Такие шаблоны раскрываются относительно корня хранилища.
Можно прочитать шаблоны имен из файла, используя "listfile:" или "listfile0:". Последний ожидает шаблонов, отделенных друг от друга символом NUL, в то время как первый предполагает перевод строки. Каждая прочитанная из файла строка интерпретируется как шаблон имени файла.
Все шаблоны, задаваемые в командной строке (но не с параметрами "-I" и "-X"), кромe "glob:", могут также совпасть с директориями: файлы в совпавших директориях считаются также совпавшими с шаблоном.
Примеры буквальных путей:
path:foo/bar файл с именем bar в каталоге foo в корне хранилища path:path:name файл или каталог с именем "path:name"
Примеры глобов:
glob:*.c любой файл, оканчивающийся на ".c", в текущем каталоге *.c любой файл, оканчивающийся на ".c", в текущем каталоге **.c любой файл, оканчивающийся на ".c", в любом подкаталоге текущего каталога, включая его самого. foo/*.c любой файл, оканчивающийся на ".c", в каталоге foo foo/**.c любой файл, оканчивающийся на ".c", в любом подкаталоге foo, включая его самого.
Примеры regexp:
re:.*\.c$ любой файл, оканчивающийся на ".c", находящийся где угодно в хранилище
Примеры шаблонов из файлов:
listfile:list.txt читать шаблоны из файла list.txt, содержащего под одному шаблону на строку listfile0:list.txt читать шаблоны из файла list.txt, содержащего шаблоны, разделенные символом NULL
См. также "hg help filesets".