Exemplos práticos de .gitignore para stacks modernas
Coleção de modelos e regras práticas de .gitignore para Node.js, Python, Java, .NET, Unity e ecossistemas com Docker.
Modelo padrão para gerenciadores de pacotes JavaScript (npm, pnpm, yarn, bun), compilação TypeScript, caches do Next.js e arquivos de ambiente locais:
# Dependencies
node_modules/
.pnp
.pnp.js
# Build outputs & caches
dist/
build/
.next/
out/
# Logs & runtime files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.turbo
# Environment variables
.env*.local
.envExclusões fundamentais para Python: bytecode compilado (__pycache__), pastas de ambientes virtuais (.venv, poetry), pacotes distribuíveis e caches de teste:
# Bytecode & cache
__pycache__/
*.py[cod]
*$py.class
# Virtual environments
.venv/
venv/
env/
ENV/
# Distribution & packaging
build/
dist/
*.egg-info/
# Pytest & coverage
.pytest_cache/
.coverage
htmlcov/Regras para projetos baseados na JVM utilizando Maven ou Gradle, arquivos .class compilados, pacotes JAR e caches de build:
# Compiled class files
*.class
# Package files
*.jar
*.war
*.ear
# Maven build directory
target/
pom.xml.tag
pom.xml.releaseBackup
# Gradle build cache
.gradle/
build/Descarta saídas do compilador Roslyn, caches de pacotes NuGet, preferências de usuário do Visual Studio e pastas de publicação:
# Build results
[Bb]in/
[Oo]bj/
# Visual Studio user files
.vs/
*.user
*.suo
*.userosscache
# Publish outputs
publish/O desenvolvimento de jogos gera gigabytes de caches temporários de assets e saídas de compilação que não devem ser salvos no Git:
# Large generated asset cache
/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/
/[Uu]ser[Ss]ettings/
# Memory dumps
sysinfo.txt
*.stackdumpConfigurações para proteger ambientes de contêineres, arquivos locais do docker-compose e chaves de API:
# Local compose overrides
docker-compose.override.yml
# Environment secrets
.env
*.env.local
# Kubernetes local contexts
kubeconfig
*.kubeconfigPerguntas Frequentes
Respostas práticas para dúvidas comuns de desenvolvedores sobre regras de .gitignore, cache e configuração de repositórios.
Como combinar regras para projetos que usam mais de uma linguagem?
Concatene as seções de cada ferramenta removendo linhas repetidas. O DotGitIgnore realiza essa mesclagem de forma automatizada sem erros de sintaxe.
Devo ignorar arquivos de lock como package-lock.json ou poetry.lock?
Não. Arquivos de lock garantem que toda a equipe e os servidores de deploy utilizem versões estritamente idênticas das dependências.
Qual a maneira correta de lidar com senhas e chaves secretas?
Nunca comite segredos no repositório. Mantenha o .env no .gitignore e forneça um modelo .env.example apenas com chaves de exemplo.
Guias e Referências de .gitignore
Como ignorar arquivos já rastreados no Git
A solução para o problema frequente no Git: desindexar arquivos sensíveis ou gerados que foram comitados por engano antes do .gitignore.
Guia de sintaxe e padrões no .gitignore
Explicação abrangente sobre formato de regras, globbing, barras iniciais e finais, particularidades da negação e intervalos de caracteres no Git.
Como ignorar um diretório no Git
Explicação clara das regras para pastas: semântica da barra final, caminhos relativos à raiz, subpastas e manutenção de pastas vazias.