.gitignore
подчиняется только glob выражениям; у него нет синтаксиса регулярных выражений.
В глобальном формате вы можете выбрать:
[
: символы из набора: совпадают ровно с одним таким символом
?
: соответствует любому символу (но всегда точно одному, например .
в регулярном выражении)
*
: совпадение с нулем или более символов
Они применяются для каждого компонента. Привязка (^
и $
) всегда подразумевается: a?c
соответствует именам aac
и abc
, но никогда abcd
или dabc
.
(правила Git немного усложняются, если вы включаете косые черты, например, **
может соответствовать любому количеству подкомпонентов; но давайте пока просто избегать этого.)
Пока ваши имена имеют фиксированную длину и шестнадцатеричные символы (в наборе [0-9a-f]
), вы можете использовать:
[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]-[0-9a-f][0-9a-f][0-9a-f][0-9a-f]-[0-9a-f][0-9a-f][0-9a-f][0-9a-f]-[0-9a-f][0-9a-f][0-9a-f][0-9a-f]-[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]
(который я получил, кормя в вашем примере и используя
s/[0-9a-f]/[0-9a-f]/g
как команда редактора, например, в sed или vi).