0

Tester Gitignore

Vložte svá pravidla .gitignore a seznam cest k souborům, abyste přesně viděli, které soubory jsou ignorovány, kterým přesným pravidlem a řádkem a která pravidla negace jsou tiše mrtvá, protože nadřazený adresář je již ignorován.

Buy Me a Coffee at ko-fi.com
Zpracování... 0%
Analýza pravidel .gitignore
Odpovídající cesty k souboru
Hotovo

Výsledek

"Why doesn't my .gitignore negation work?" je jedna z nejběžnějších otázek git a upřímná odpověď je téměř vždy stejná: `!vzor`, který se pokouší znovu zahrnout soubor do adresáře, který dřívější pravidlo již vylučuje, nemůže nikdy fungovat, protože git nesestupuje do ignorovaných adresářů, aby znovu zkontroloval cokoli v nich. Tento nástroj reimplementuje skutečný gitův algoritmus porovnávání .gitignore – nikoli aproximaci – konkrétně tak, aby dokázal zachytit a vysvětlit tuto přesnou situaci, spolu s každým dalším pravidlem vzoru, které git podporuje.

Vložte svá pravidla .gitignore do jednoho pole a seznam cest k souborům (jednu na řádek, jako `dist/index.js`, `node_modules/foo/bar.js` nebo `.env`) do druhého a nástroj vyhodnotí každou cestu přesně tak, jak by to udělal git: komentáře a prázdné řádky jsou přeskočeny, úvodní pravidlo, koncové pravidlo není odstraněno `` escape `` ukotví jej do kořenového adresáře namísto toho, aby se shodoval v jakékoli hloubce, koncové `/` jej omezí na adresáře a znakové třídy `*`, `?`, `[abc]` a `**` (párování přes hranice adresářů) všechny fungují podle zdokumentovaných pravidel glob.

Důležité je, že cesty jsou kontrolovány adresář po adresáři od kořene dolů, stejným způsobem, jakým funguje vlastní ignorovací jádro git – ne testováním úplné cesty proti každému pravidlu izolovaně. To umožňuje správně detekovat případ mrtvé negace: pokud je `dist/` ignorováno na řádku 3 a pozdější `!dist/keep.js` se v něm pokusí zachránit jeden soubor, tento nástroj hlásí `dist/keep.js` jako stále ignorovaný, jako důvod pojmenuje pravidlo 3. řádku a samostatně označí negaci spíše jako zastíněnou.

Výsledná tabulka poskytuje každé testované cestě vlastní řádek s jasným ignorovaným verdiktem ano/ne, přesný text pravidla a číslo řádku, které rozhodly, a – kdykoli je to relevantní – poznámku v jednoduchém jazyce vysvětlující stínovanou negaci nebo zděděné pravidlo nadřazeného adresáře. To je detail, který proměňuje matoucí .gitignore na takový, o kterém můžete uvažovat ještě před tím, než se zavážete.