Ir para o conteúdo

Testador de regras .gitignore

Verifique quais das suas regras .gitignore ignoram ou permitem cada caminho e porquê.

Entrada
Caminhos para testar
Saída

Testador de regras .gitignore

Cole um ficheiro .gitignore no primeiro campo e uma lista de caminhos de ficheiros ou pastas no segundo, e esta ferramenta diz-lhe o que acontece a cada um: ignorado ou não, e qual linha da série de regras o decidiu. É construída para o momento em que um ficheiro que esperava rastrear aparece em git status de qualquer forma, ou um artefato de compilação que pensou estar excluído é commitado por acidente.

A correspondência segue a semântica real de .gitignore: os padrões são avaliados em ordem e a última regra correspondente vence, portanto um "*.log" amplo mais cedo no ficheiro pode ser sobrescrito por um "!important.log" mais estreito mais tarde. Uma barra de encerramento marca uma regra como apenas-diretório, e ignorar um diretório também ignora tudo dentro dele — "node_modules/" captura "node_modules/react/index.js" também, não apenas a pasta em si. Tanto wildcards "*" simples como o "**" recursivo são suportados, em qualquer posição.

Desative a correspondência sensível a maiúsculas para verificar sistemas de ficheiros que dobram casos, mude a tabela de resultados para duas listas simples de caminhos ignorados e não ignorados, ou oculte caminhos que nenhuma regra tocou para focar-se no que suas regras realmente fazem. O aviso de regras não utilizadas assinala qualquer linha que nunca correspondeu a um caminho testado — frequentemente um erro de digitação ou um padrão deixado após uma pasta renomeada. Finais de linha Windows e Unix são tratados da mesma forma em ambos os campos, e a contagem sob a saída relata caminhos testados, caminhos ignorados e regras não utilizadas.

Tudo é executado no seu navegador; nem suas regras .gitignore nem sua lista de caminhos são nunca carregados. Copie o relatório, descarregue-o como um ficheiro .txt ou devolva-o à entrada para testar outro lote de caminhos.

FAQ

Isto lê os meus ficheiros de projeto reais?
Não. Você cola as regras .gitignore e os caminhos você mesmo — a ferramenta nunca toca num sistema de ficheiros ou repositório real.
Por que um ficheiro dentro de uma pasta ignorada é mostrado como ignorado, mesmo que nenhuma regra mencione seu nome?
Uma regra de diretório como "build/" ignora a pasta e tudo dentro dela. O relatório cita a regra de diretório que tomou a decisão, não a específica do ficheiro que falta.
Posso re-incluir um ficheiro com "!" depois de excluir sua pasta-mãe?
Esta ferramenta aplica regras de negação em ordem como o git faz, mas o git real tem uma restrição extra: não re-incluirá um ficheiro cuja pasta-mãe já está excluída. Tenha isso em mente para padrões de negação aninhados dentro de pastas ignoradas.
O que significa "regras que nunca têm correspondência"?
Lista cada regra no seu .gitignore que não correspondeu nenhum dos caminhos testados — uma forma útil de encontrar um erro de digitação ou um padrão que já não se aplica ao seu projeto.
O meu ficheiro .gitignore ou lista de caminhos são carregados em qualquer lugar?
Não. A correspondência é executada inteiramente no seu navegador — nada que cole aqui sai nunca do seu dispositivo.