2013-03-28 14 views

Odpowiedz

27

Jak pokazano here i szczegółowo opisane w „this question”, funkcja fnmatch() jest zaangażowany w interpretacji wzorców glob, co oznacza, że ​​wyrażenia regularne nie są obsługiwane.

To co gitignore man page wspomina:

Inaczej git treats the pattern as a shell glob suitable for consumption by fnmatch(3) z flagą FNM_PATHNAME: symbole wieloznaczne w strukturze nie będzie pasował do / w ścieżkę.
Na przykład "Documentation/*.html" pasuje do "Documentation/git.html", ale nie "Documentation/ppc/ppc.html" lub "".

Można zobaczyć jakiś związek między wzorami glob i wyrażeń regularnych w thosequestions.

8

Pliki .gitignore (i inne) używają nazw plików globs, a nie wyrażeń regularnych.

Bardzo wątpię, czy uda ci się przekonać hakerów gitów, żeby to zmienili. Po prostu zbytnio zakorzeniony, a globusy są dużo bardziej znane jako nazwy plików.

+10

Szkoda. Taka przydatna funkcja mogłaby być. –

+3

@ArturBarseghyan, rozważ Mercurial, ma tę fajną funkcję i wiele innych fajnych funkcji. – toriningen

+0

@modchan: Wiem, że istnieje on w Mercurial i często go używam. Dzięki za komentarz. –

Powiązane problemy