Exemple de reguli .gitignore
Variante gata făcute: copiază codul direct sau deschide exemplul în generator și modifică-l după nevoie.
# ---------- Laravel ----------
/vendor/
/node_modules/
/public/build
/public/hot
/public/storage
/storage/*.key
.env
.env.backup
.env.production
.phpunit.result.cache
Homestead.json
Homestead.yaml
auth.json
# ---------- Fișiere de mediu (.env) ----------
.env.*
!.env.example
!.env.sample
/*
!/wp-content/
/wp-content/*
!/wp-content/themes/
/wp-content/themes/*
!/wp-content/themes/tema-mea/
logs/*
!logs/.gitkeep
uploads/*
!uploads/.gitkeep
git rm --cached .env # rămâne pe disc, iese din git
git rm -r --cached node_modules
git check-ignore -v storage/app.log # arată fișierul și rândul regulii
git config --global core.excludesFile ~/.gitignore_global
Cum folosești generatorul de .gitignore
- Bifează ce folosește proiectul: limbajul (Node.js, PHP, Python, Java, .NET), platforma (WordPress, Laravel) și extrasele utile (fișiere
.env, jurnale, rezultate de build, Docker). - Bifează și sistemele de operare și editoarele echipei (macOS, Windows, Linux, VS Code, JetBrains, Vim).
- Adaugă în Reguli proprii ce mai e specific proiectului, câte o regulă pe rând.
- Copiază rezultatul sau apasă Descarcă fișierul. Se descarcă drept
gitignore.txt; redenumește-l în.gitignoreîn rădăcina depozitului. Fișierul se generează în browser.
Sintaxa pe scurt
node_modules/ # un folder, oriunde în proiect
/vendor/ # doar folderul din rădăcină
*.log # toate fișierele .log
.env.* # .env.local, .env.production...
!.env.example # excepție: acesta rămâne în git
Ordinea contează: o regulă cu ! readuce un fișier exclus mai sus. Un fișier nu poate fi readus dacă folderul lui întreg este exclus, de aceea se scrie .vscode/* (conținutul), nu .vscode/, înainte de excepții. Generatorul nu elimină regulile repetate care apar după o excepție, ca să nu schimbe rezultatul.
Ce nu intră în git
Dependențele (node_modules/, vendor/) se reinstalează din package-lock.json și composer.lock, care se publică. Parolele din .env sau wp-config.php nu se publică niciodată; pune în depozit un fișier exemplu cu valorile goale. Fișierele încărcate în wp-content/uploads/ se copiază separat, prin backup.
Fișiere urmărite deja
Un fișier care e deja în git nu dispare când îl adaugi în .gitignore. Scoate-l din index (rămâne pe disc), apoi fă commit:
git rm --cached .env
git rm -r --cached node_modules
git check-ignore -v fisier.txt # ce regulă îl ignoră
Întrebări frecvente
Unde pun regulile pentru editorul meu?
Fișierele create de editorul sau sistemul tău (.DS_Store, .idea/) pot sta într-un .gitignore global, setat cu git config –global core.excludesFile ~/.gitignore_global. Așa nu încarci .gitignore-ul proiectului cu preferințele fiecăruia.
Am publicat din greșeală o parolă. Ajunge să o scot?
Nu. Parola rămâne în istoricul git și trebuie considerată compromisă: schimb-o întâi, apoi curăță istoricul dacă e nevoie.