Gerador de .gitignore

Próximo

Um .gitignore ausente é o motivo pelo qual chaves de API acabam no histórico do Git e 400 MB de node_modules vão parar no GitHub. Este gerador produz um modelo testado para a sua pilha, Node, Python, Rails ou Laravel, com pastas de dependências, saída de build e arquivos de ambiente já excluídos.

Como gerar um .gitignore

  1. 1

    Escolha sua pilha

    Node, Python, Rails ou Laravel, cada um tem seu próprio conjunto de artefatos transitórios.

  2. 2

    Gerar

    A ferramenta mescla regras comuns (.DS_Store, .env, node_modules) com regras específicas da pilha.

  3. 3

    Salvar como .gitignore

    Coloque o arquivo na raiz do repositório antes do primeiro commit.

  4. 4

    Comitar

    .gitignore deve ser rastreado, é parte do projeto, não uma preferência local.

Por que o bloco comum está sempre presente

Regra Motivo para ignorar
.DS_Store Metadados do Finder do macOS, nunca úteis para outras máquinas
.env Segredos: chaves de API, senhas de banco de dados, credenciais OAuth
.env.* Variantes específicas do ambiente (staging, produção)
!.env.example Mas mantenha o arquivo de exemplo para que novos colaboradores saibam a estrutura
node_modules/ Instalável a partir de package.json; enorme e específico da plataforma

Adições específicas da pilha

Pilha Adições principais
Node dist/, coverage/, npm-debug.log*
Python __pycache__/, .venv/, *.pyc, .pytest_cache/
Rails log/*, tmp/*, storage/*, /public/assets
Laravel vendor/, /storage/*.key, /public/build, .phpunit.cache/

Erros comuns

  • Comitar .env cedo demais, e só depois adicioná-lo ao .gitignore. O arquivo já está no histórico, use git rm --cached .env e rotacione cada segredo que estava nele.
  • Ignorar .env.example junto com .env. Os colegas precisam do exemplo para inicializar.
  • Globs muito amplos: *.log pode esconder configurações de log críticas para produção; seja mais específico em caso de dúvida.
  • Arquivos específicos da plataforma que não são locais para você: contribua com eles através de um .gitignore compartilhado, não um pessoal.

Gitignore pessoal vs do projeto

Para arquivos de editor únicos para você (IDEs da JetBrains, Emacs) use seu gitignore global (~/.config/git/ignore) em vez de sobrecarregar cada projeto.

Perguntas frequentes

Porque .gitignore apenas impede que arquivos não rastreados sejam adicionados. Execute git rm --cached path/to/file para parar de rastrear um arquivo já comitado, comite a mudança, e a regra então o excluirá.

Não, arquivos de bloqueio devem ser comitados para que cada ambiente instale as mesmas versões exatas. Ignorá-los reintroduz a classe de bug “funciona na minha máquina”.

Uma barra inicial anexa o padrão à raiz do repositório. /logs corresponde apenas a um diretório logs/ de nível superior, enquanto logs corresponde a qualquer diretório logs em qualquer profundidade.

Não. O arquivo gerado não é armazenado nem rastreado. Sua escolha de pilha é enviada ao nosso servidor para construir as regras e, no modo de várias etapas, também aparece no link da página, mas o conteúdo do arquivo não é mantido.

Ferramentas relacionadas

Ferramenta disponível em outros idiomas