github/gitignore · Laravel.gitignore
Modèle .gitignore Laravel expliqué
Explique pourquoi Laravel.gitignore ignore vendor, node_modules, .env, le lien symbolique public/storage, le build Vite, les clés Passport et auth.json.
Laravel.gitignore est destiné aux applications Laravel qui installent leurs dépendances avec Composer et npm. Il reprend des règles proches du .gitignore fourni par défaut dans un projet Laravel, en y ajoutant des fichiers d'environnements de développement comme Homestead ou Vagrant.
Le plus important est .env. Laravel lit dans .env le mot de passe de la base de données, APP_KEY et les clés d'API de messagerie et de paiement : si ce fichier est commité, tous les secrets de l'application sont exposés.
Explication règle par règle
| Motif | Ce qui est ignoré et pourquoi |
|---|---|
/vendor/node_modules/ | DépendancesDossiers recréés par composer install et npm install. Commitez composer.lock et package-lock.json pour que tout le monde installe les mêmes versions. |
.env.env.backup.env.production | Fichiers d'environnementSecrets de l'application et réglages propres à chaque environnement. La liste des variables se partage via .env.example, que ce modèle n'ignore pas. |
public/storagepublic_html/storagestorage/*.key | Lien de stockage et clésLien symbolique créé par php artisan storage:link et clé privée OAuth de Passport (oauth-private.key). Le lien se recrée sur chaque serveur, et la clé est secrète. |
/public/buildpublic/hotpublic_html/hotnpm-debug.logyarn-error.log | Build front-endRésultats de build de Vite et fichier hot qui signale que le serveur de développement tourne. Si le fichier hot est commité, le serveur de production tente de charger les assets depuis un serveur de développement qui n'existe pas. |
.phpunit.result.cache/.phpunit.cache | Cache de testsCache où PHPUnit mémorise notamment l'ordre des tests en échec. |
Homestead.yamlHomestead.json/.vagrant.phpactor.json/storage/pail | Environnement de développement et outilsRéglages Homestead personnels, état Vagrant, configuration Phpactor et fichiers de log de Laravel Pail. |
auth.json | Authentification ComposerFichier d'authentification Composer où sont enregistrés les jetons et mots de passe des dépôts de paquets privés. |
bootstrap/compiled.phpapp/storage/ | Chemins héritésFichiers compilés et chemins de stockage de l'époque de Laravel 4. Ils n'apparaissent pas dans les versions récentes. |
Points d'attention en pratique
- Dans
.env.example, placez des valeurs fictives à la place des vraies valeurs, puis commitez-le. - Les dossiers
app,frameworketlogssousstorage/contiennent des .gitignore que Laravel y place par défaut : ne les supprimez pas. - Si
.envest resté dans l'historique, changezAPP_KEYavecphp artisan key:generateet remplacez aussi les mots de passe de la base de données et des API.
Modèle d'origine
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
Source des modèles : github/gitignore/Laravel.gitignore @356fd7b (2026-09-11) · CC0-1.0