Guia do gerador .gitignore: criar regras de ignorar rapidamente por tipo de projeto
O que é .gitignore
O arquivo .gitignore diz ao Git quais arquivos/diretórios não devem ser controlados por versão:
node_modules/ ← Ignorar diretório inteiro
*.log ← Ignorar todos os arquivos de log
.env ← Ignorar arquivo de variáveis de ambiente
dist/ ← Ignorar saída de build
Arquivos não rastreados que correspondem às regras do .gitignore são automaticamente ignorados pelo Git. Arquivos já rastreados não são afetados.
Regras de sintaxe explicadas
Padrões básicos
| Sintaxe | Significado | Exemplo |
|---|---|---|
*.ext |
Corresponder todos os arquivos .ext | *.log |
dir/ |
Corresponder diretório inteiro | node_modules/ |
file |
Corresponder arquivo específico | .env |
** |
Corresponder qualquer nível de diretório | **/test |
? |
Corresponder um único caractere | config?.json |
[abc] |
Corresponder qualquer caractere entre colchetes | file[123].txt |
Padrão de negação !
*.log ← Ignorar todos os logs
!important.log ← Mas manter important.log
Padrões de negação devem ser colocados após a regra de ignorar que negam.
Regras de caminho
/README.md ← Ignorar apenas README.md na raiz
README.md ← Ignorar README.md em qualquer nível
docs/*.pdf ← Ignorar PDFs em docs/, não recursivo
docs/**/*.pdf ← Ignorar PDFs em todos os subdiretórios de docs/
Modelos comuns de projetos
Node.js
node_modules/
dist/
build/
.next/
.env
.env.local
*.log
coverage/
Python
__pycache__/
*.py[cod]
*.egg-info/
dist/
.venv/
venv/
.env
.pytest_cache/
.mypy_cache/
Java / Spring Boot
target/
*.class
*.jar
*.war
.gradle/
.idea/
*.iml
application-local.yml
IDE / Editores
# VS Code
.vscode/
# IntelliJ IDEA
.idea/
*.iml
# macOS
.DS_Store
# Windows
Thumbs.db
Usando a ferramenta gitignore
Passo 1: Abrir a ferramenta
Visite a ferramenta gitignore para acessar a interface do gerador.
Passo 2: Selecionar tipo de projeto
Marque as tecnologias usadas no seu projeto:
- ☑ Node.js
- ☑ Python
- ☑ Java
- ☑ Vue / React / Angular
Passo 3: Selecionar IDE
Marque os editores usados pela sua equipe:
- ☑ VS Code
- ☑ IntelliJ IDEA
- ☑ Outro
Passo 4: Gerar e baixar
Clique em "Gerar". A ferramenta mescla automaticamente todos os modelos, remove duplicatas e produz um arquivo .gitignore completo.
Passo 5: Colocar na raiz do projeto
Coloque o arquivo baixado na raiz do seu repositório Git. Certifique-se de que o nome seja .gitignore (note o ponto inicial).
gitignore global
Além do .gitignore a nível de projeto, você pode configurar regras de ignorar globais (aplica-se a todos os repos):
# Configurar arquivo gitignore global
git config --global core.excludesFile ~/.gitignore_global
# Editar regras globais
vim ~/.gitignore_global
Ignorados globais recomendados:
# Arquivos do sistema
.DS_Store
Thumbs.db
# Configurações de IDE
.idea/
.vscode/
# Ferramentas pessoais
.todo
Regras globais são para arquivos do ambiente pessoal. Regras a nível de projeto são para arquivos específicos do projeto.
Lidando com arquivos já rastreados
O .gitignore afeta apenas arquivos não rastreados. Se um arquivo já está rastreado pelo Git:
# Parar de rastrear mas manter o arquivo local
git rm --cached .env
# Parar de rastrear um diretório inteiro
git rm -r --cached node_modules/
# Commitar a mudança de parar de rastrear
git commit -m "chore: update gitignore and untrack files"
A flag
--cachedgarante a remoção apenas do índice do Git, sem excluir o arquivo local.
Erros comuns
| Erro | Causa | Solução |
|---|---|---|
| Regra não funciona | Arquivo já rastreado | Executar git rm --cached primeiro |
| Negação não funciona | ! colocado antes da regra de ignorar |
Mover a regra ! após a regra de ignorar correspondente |
| Ignorou demais | Padrão muito amplo | Usar / para limitar o escopo do caminho |
| Esqueceu de ignorar .env | Falta modelo de variáveis de ambiente | Sempre adicionar .env ao .gitignore |
| Regras da equipe inconsistentes | Sem modelo unificado | Usar a ferramenta para gerar um modelo padrão |
.gitignore e .gitkeep
Após ignorar um diretório, o Git não rastreará diretórios vazios. Para preservar a estrutura de diretórios vazios:
logs/ ← .gitignore ignora logs
logs/.gitkeep ← .gitkeep como placeholder, preserva o diretório
.gitkeepnão é um recurso do Git — é uma convenção da comunidade. Coloque um arquivo.gitkeepno diretório vazio.
Resumo
O .gitignore é fundamental para a configuração de projetos. Regras de ignorar corretas previnem o commit de informações sensíveis e arquivos redundantes. Domine a sintaxe, os modelos comuns e a configuração global, e use a ferramenta gitignore para geração rápida — é o primeiro passo para um controle de versão eficaz.