.gitignore Örnekleri — Stack Başına#
Kopyala-yapıştır
.gitignoreblokları. Çoğu sızıntı, ignore edilmeyen.env/ state / credential dosyasından gelir — önce bunları kapat.
🔴 Her repoda (ortak)#
# OS
.DS_Store
Thumbs.db
# Editor
.idea/
.vscode/
*.swp
# Secrets — ASLA commit'leme
.env
.env.*
!.env.example
*.pem
*.key
credentials.json
Terraform#
# State + plan (secret + büyük)
*.tfstate
*.tfstate.*
*.tfplan
crash.log
# Provider/modül indirmeleri
.terraform/
.terraform.lock.hcl # ekip kararına göre: lock'u commit etmek genelde DOĞRU
# Değişken dosyaları (gizli değer içerir)
*.tfvars
!example.tfvars
Node.js#
Python#
Java / Gradle#
🚫 Anti-Pattern#
| Anti-pattern | Niye kötü | Doğru |
|---|---|---|
.env'i ignore etmeyi unutmak | Credential repo geçmişine girer; rotate etmeden temizlenmez | İlk commit'ten önce .env ignore + .env.example ekle |
| State dosyasını commit'lemek | *.tfstate plaintext secret içerir | Remote backend (S3/GCS) + *.tfstate ignore |
| Sızan secret'ı sadece silmek | Git geçmişinde kalır | git filter-repo ile geçmişten temizle + secret'ı rotate et |
node_modules/ commit'lemek | Repo şişer, platform-spesifik binary'ler | node_modules/ ignore, package-lock.json commit |
"
.gitignoregüvenlik kontrolüdür: en ucuz secret-leak önlemi commit'ten önce gelir."