github/gitignore · Laravel.gitignore
Template .gitignore do Laravel explicado
Explica por que o Laravel.gitignore ignora vendor, node_modules, .env, o link simbólico public/storage, o build do Vite, as chaves do Passport e o auth.json.
O Laravel.gitignore é para aplicações Laravel que instalam dependências com Composer e npm. Tem regras parecidas com o .gitignore que vem por padrão em um projeto Laravel, mais arquivos de ambientes de desenvolvimento como Homestead e Vagrant.
O mais importante é o .env. O Laravel lê do .env a senha do banco de dados, o APP_KEY e as chaves de API de e-mail e pagamento, então, se esse arquivo for commitado, todos os segredos da aplicação ficam expostos.
Explicação regra por regra
| Padrão | O que ignora e por quê |
|---|---|
/vendor/node_modules/ | DependênciasSão pastas recriadas com composer install e npm install. Commite composer.lock e package-lock.json para que as mesmas versões sejam instaladas. |
.env.env.backup.env.production | Arquivos de ambienteSão os segredos da aplicação e as configurações por ambiente. A lista de variáveis é compartilhada com o .env.example, e este template não ignora esse arquivo. |
public/storagepublic_html/storagestorage/*.key | Link e chaves de armazenamentoSão o link simbólico criado por php artisan storage:link e a chave privada OAuth do Passport (oauth-private.key). O link é criado de novo em cada servidor, e a chave é secreta. |
/public/buildpublic/hotpublic_html/hotnpm-debug.logyarn-error.log | Build do frontendSão os resultados de build do Vite e o arquivo hot, que indica que o servidor de desenvolvimento está rodando. Se o arquivo hot for commitado, o servidor de produção tentará carregar os assets de um servidor de desenvolvimento que não existe. |
.phpunit.result.cache/.phpunit.cache | Cache de testesÉ o cache em que o PHPUnit guarda, entre outras coisas, a ordem dos testes que falharam. |
Homestead.yamlHomestead.json/.vagrant.phpactor.json/storage/pail | Ambiente de desenvolvimento e ferramentasSão a configuração pessoal do Homestead, o estado do Vagrant, a configuração do Phpactor e os arquivos de log do Laravel Pail. |
auth.json | Autenticação do ComposerÉ o arquivo de autenticação do Composer onde ficam os tokens e senhas de repositórios de pacotes privados. |
bootstrap/compiled.phpapp/storage/ | Caminhos legadosSão o arquivo compilado e o caminho de armazenamento da época do Laravel 4. Não aparecem nas versões recentes. |
Cuidados na prática
- No
.env.example, coloque marcadores em vez de valores reais e commite-o. - As pastas
app,frameworkelogssobstorage/têm .gitignore de subdiretório que o Laravel inclui por padrão; não os apague. - Se o
.envficou no histórico, troque oAPP_KEYcomphp artisan key:generatee substitua também as senhas de banco de dados e de API.
Template original
Laravel.gitignore
/vendor/node_modules/npm-debug.logyarn-error.log# Laravel 4 specificbootstrap/compiled.phpapp/storage/# Laravel 5 & Lumen specificpublic/storagepublic/hot# Laravel 5 & Lumen specific with changed public pathpublic_html/storagepublic_html/hotstorage/*.key.envHomestead.yamlHomestead.json/.vagrant.phpunit.result.cache/.phpunit.cache/public/build/storage/pail.env.backup.env.production.phpactor.jsonauth.json
Origem dos templates: github/gitignore/Laravel.gitignore @356fd7b (2026-09-11) · CC0-1.0