Gitignore Nedir?
Yayın: · Son güncelleme:
Gitignore Nedir? Kısaca
Gitignore, Git'e hangi dosya ve klasörleri takip etmemesi gerektiğini söyleyen düz metin dosyasıdır. Proje kökünde .gitignore adıyla durur ve şifreler, geçici dosyalar ya da büyük bağımlılık klasörleri gibi içerikleri depoya girmekten korur.

Gitignore nedir?
Gitignore, adını "Git, bunu yok say" fikrinden alır. Dosyanın adı başında nokta ile .gitignore şeklinde yazılır. İçine yazdığınız her satır, Git'in görmezden geleceği bir dosya ya da desen tanımlar.
Bu dosya da depoya eklenir. Böylece ekipteki herkes aynı kurallarla çalışır ve biri yanlışlıkla kendi bilgisayarına özel bir ayar dosyasını ya da yüzlerce megabaytlık bir klasörü göndermez.
.gitignore dosyası nasıl yazılır?
Kural basit: her satıra bir desen. Basit bir örnek:
node_modules/
.env
*.log
.DS_Store
İlk satır bağımlılık klasörünü, ikincisi şifrelerin tutulduğu ortam dosyasını, üçüncüsü uzantısı .log olan tüm dosyaları dışarıda bırakır. Satır başına # koyarak açıklama yazabilirsiniz. GitHub, yeni depo açarken dil seçimine göre hazır gitignore şablonları sunar.
Sık yapılan hata: geç eklenen kurallar
Bu dosya yalnız henüz takip edilmeyen dosyaları etkiler. Bir dosyayı zaten commit ettiyseniz, sonradan listeye eklemek onu geçmişten silmez.
Örneğin içinde veritabanı şifresi olan .env dosyasını yanlışlıkla gönderdiniz. Önce git rm --cached .env ile takipten çıkarırsınız, sonra gitignore'a eklersiniz. Şifre geçmişte kaldığı için en doğru adım onu hemen değiştirmektir. Projeye başlarken gitignore'u ilk dosyalardan biri yapmak bu riski baştan ortadan kaldırır.
Sıkça Sorulan Sorular
Gitignore dosyası nereye konur?
Genelde deponun kök klasörüne konur. Alt klasörlere de ayrı gitignore dosyaları eklenebilir; bu dosyalar yalnız bulundukları klasör ve altındakiler için geçerli olur.
Gitignore'a yazdığım dosya neden hâlâ görünüyor?
Büyük ihtimalle o dosya kural eklenmeden önce commit edilmiştir. git rm --cached komutuyla takipten çıkarıp yeni bir commit yaptığınızda gitignore devreye girer.