Aşağıdaki resme bakın. .Gitignore dosyam src / dist içindeki tüm dosyaları yok sayıyor olmalı, ama değil.
Yanıtlar:
.gitignore
yalnızca henüz deponun parçası olmayan dosyaları yoksayar. git add
Bazı dosyaları zaten düzenlediyseniz, bunların değişiklikleri izlenmeye devam edecektir. Bu dosyaları deponuzdan kaldırmak için (ancak dosya sisteminizden değil) git rm --cached
üzerlerinde kullanın .
.Gitignore dosyası Git tarafından izlenmeyen dosyaların izlenmemesini sağlar.
Bir .gitignore dosyasına klasörler / dosyalar eklemek onları izlemeyi bırakmaz - Git tarafından izlenmeye devam ederler.
Dosyaları izlemek için, .gitignore dosyasında listelenen izlenen dosyaları havuzdan kaldırmak gerekir. Ardından bunları yeniden ekleyin ve değişikliklerinizi uygulayın.
Bunu yapmanın en kolay, en kapsamlı yolu, depodaki tüm dosyaları kaldırmak ve önbelleğe almak, ardından hepsini geri eklemektir. .Gitignore dosyasında listelenen tüm klasörler / dosyalar izlenmeyecektir. Depodaki en üst klasörden aşağıdaki komutları çalıştırın:
git rm -r --cached .
git add .
Sonra değişikliklerinizi uygulayın:
git commit -m "Untrack files in .gitignore"
Unutmayın ki istenmeyen dosyalar içeren önceki kayıtlar kayıt geçmişinde kalacaktır. GitHub'a gönderirken, .env
veya client_secret.json
dosyalar içerebilecek bir işleme geçmişine dikkat edin .
En iyi uygulama , bir .gitignore dosyası oluşturmak ve bir projeyi başlatırken izlenmesini istemediğiniz klasörler / dosyalar ile doldurmaktır. Ancak, genellikle istenmeyen dosyaların izlendiğini ve depolandığını fark ettikten sonra .gitignore dosyasına eklemek gerekir.
git rm -r --cached .
Geri almayı kullandıktan sonra, tüm değişiklikler .gitignore ile dışarıda bırakılmaması gereken tüm dosyaları yeniden eklemek için de çalışır .
Şuna bir bakın: .gitignore çalışmıyor Ve özellikle ADTC'den gelen açıklama:
.Gitignore dosyanızın ANSI veya UTF-8 kodlamasını kullandığından emin olun. Unicode BOM gibi başka bir şey kullanıyorsa, Git'in dosyayı okuyamaması mümkündür. - ADTC 14 Aralık '17, 12:39