Computação Jr.
CodeDex
Base de Conhecimento & Glossário · Code Júnior
Início / Controle de Versão (Git e GitHub) / .gitignore
Básico

.gitignore

Arquivo de configuração que lista arquivos e pastas que o Git não deve rastrear nem enviar ao repositório.

Para que serve o .gitignore?

Nem tudo que está na pasta do seu projeto deve ir para o GitHub. Arquivos pesados de dependências (node_modules/, vendor/), arquivos gerados automaticamente (/public/build, *.log) e principalmente senhas ou chaves secretas (.env) devem ficar apenas na máquina ou servidor.

Quando você coloca um padrão no arquivo .gitignore (na raiz do projeto), o Git passa a ignorar esses itens no git status e no git add ..

Regras mais comuns de sintaxe

  • arquivo.txt — ignora arquivos com esse nome em qualquer pasta.
  • /pasta/ — ignora a pasta apenas na raiz do repositório.
  • *.log — ignora qualquer arquivo terminado em .log.
  • !.env.example — exceção (!): não ignora esse arquivo específico.

E se eu já commitei o .env ou node_modules sem querer?

O .gitignore só impede novos arquivos de serem rastreados. Se o arquivo já foi commitado antes, remova-o apenas do índice do Git (sem apagar do seu PC) com git rm --cached:

  • Para arquivo: git rm --cached .env
  • Para pasta inteira: git rm -r --cached node_modules
Exemplo Prático
gitignore
# Dependências instaladas pelo Composer e NPM (muito pesadas e reproduzíveis)
/vendor/
/node_modules/

# Variáveis de ambiente e segredos (NUNCA versionar senhas reais!)
.env
.env.production
!.env.example

# Builds e caches locais
/public/build/
/storage/*.key
storage/logs/*.log
*.log

# Arquivos do sistema operacional e editores
.DS_Store
Thumbs.db
/.vscode/
/.idea/

Teste seus conhecimentos

Esta nota tem 1 pergunta para você praticar.

Ir para o Quiz desta Nota →