Comentário na mesma linha
- Entrada
- *.log # logs → app.log
- Saída esperada
- não ignorado / not ignored
O padrão virou *.log # logs, que não casa app.log.
gitignore não funciona
Cole o .gitignore e a lista de arquivos na aba Testar. A ferramenta mostra qual linha decide cada caminho, e o linter marca espaço no fim, comentário na linha, barra invertida e classe sem fechamento.
O padrão virou *.log # logs, que não casa app.log.
A regra vira buildout; escreva build/out.
O * não atravessa a barra; use src/**/*.js.
Com core.ignorecase=true seria ignorado.
O espaço é descartado, então a regra funciona; o linter só avisa.
Toque no atalho da sua pilha (Next.js, Python, Laravel, Unity e outros) ou busque pelo nome: react e vite abrem o modelo Node, django abre o Python. Some o editor (Visual Studio Code, JetBrains) e o sistema (macOS, Windows, Linux) de quem trabalha no projeto, copie o resultado e salve como .gitignore na raiz do repositório. Modelos de editor e de sistema também podem ir para um arquivo global (core.excludesFile), para não poluir o projeto.
Rode git check-ignore -v caminho. A saída traz o arquivo, a linha e o padrão, e uma negação aparece com o ! na frente. Sem saída, nenhuma regra casa o caminho.
Não, o Git relê o arquivo a cada comando. O que não muda é o que já está rastreado: aí o remédio é git rm --cached e um commit.
Sim: as regras dele valem para a subpasta e o que está abaixo, e os padrões com barra são ancorados nela. Na aba Testar, o campo Pasta onde mora o .gitignore simula isso.
Carregando os modelos...
Escolha ao menos um modelo para gerar o arquivo.
Carregando os modelos...
# Normalize line endings: Git detects text files, LF in the repository. * text=auto eol=lf # Shell scripts need LF; Windows scripts need CRLF. *.sh text eol=lf *.bat text eol=crlf *.cmd text eol=crlf *.ps1 text eol=crlf # Binary files: no conversion and no text diff. *.png binary *.jpg binary *.jpeg binary *.gif binary *.ico binary *.webp binary *.pdf binary *.zip binary *.gz binary *.woff binary *.woff2 binary # Lock files: GitHub collapses them in diffs. package-lock.json linguist-generated yarn.lock linguist-generated pnpm-lock.yaml linguist-generated
O .gitignore só vale para arquivos que o Git ainda não rastreia. Para parar de rastrear sem apagar do disco:
git rm --cached path/to/file git rm -r --cached path/to/folder git commit -m "Stop tracking ignored files"
Para reaplicar o .gitignore a tudo de uma vez (revise o git status antes do commit):
git rm -r --cached . git add . git commit -m "Apply .gitignore"
Para ignorar só na sua máquina, use um arquivo global (core.excludesFile) ou o .git/info/exclude do clone, com a mesma sintaxe:
git config --global core.excludesFile ~/.gitignore_global .git/info/exclude
Nenhum problema encontrado nas regras.