0

Gitignore Test Cihazı

Tam olarak hangi dosyaların yoksayıldığını, hangi kural ve satıra göre yok sayıldığını ve bir üst dizin zaten yok sayıldığı için hangi olumsuzlama kurallarının sessizce öldüğünü görmek için .gitignore kurallarınızı ve dosya yollarının bir listesini yapıştırın.

Buy Me a Coffee at ko-fi.com
İşleniyor... 0%
.gitignore kurallarını ayrıştırma
Eşleşen dosya yolları
Bitti

Sonuç

".gitignore olumsuzlamam neden çalışmıyor?" Git ile ilgili en yaygın sorulardan biridir ve dürüst cevap hemen hemen her zaman aynıdır: daha önceki bir kuralın zaten hariç tuttuğu bir dosyayı bir dizine yeniden dahil etmeye çalışan bir '!desen' hiçbir zaman işe yaramaz çünkü git, içlerindeki herhangi bir şeyi yeniden kontrol etmek için yok sayılan dizinlere inmez. Bu araç, git'in gerçek .gitignore eşleştirme algoritmasını (bir yaklaşım değil) yeniden uygular; böylece git'in desteklediği diğer tüm kalıp kurallarıyla birlikte, tam durumu yakalayıp açıklayabilir.

.gitignore kurallarınızı bir kutuya ve dosya yollarının listesini (satır başına bir tane, örneğin "dist/index.js", "node_modules/foo/bar.js" veya ".env") diğerine yapıştırın ve araç her yolu tam olarak Git'in yaptığı gibi değerlendirir: yorumlar ve boş satırlar atlanır, sondaki boşluklar kaçılmadıkça çıkarılır, baştaki `!' bir kuralı geçersiz kılar, baştaki `/` çapaları herhangi bir derinlikte eşleşmesine izin vermek yerine köke aktarır, sonundaki bir `/` onu dizinlerle sınırlandırır ve `*`, `?`, `[abc]` karakter sınıfları ve `**` (dizin sınırları boyunca eşleşme) belgelenen glob kurallarına göre çalışır.

Kritik olarak, yollar kökten aşağıya doğru dizine göre kontrol edilir, tıpkı git'in kendi görmezden gelme motorunun çalıştığı gibi - tam yolu her kurala karşı ayrı ayrı test ederek değil. Ölü olumsuzlama durumunun doğru bir şekilde tespit edilmesini mümkün kılan şey budur: 3. satırda `dist/' yoksayılırsa ve daha sonra `!dist/keep.js` içindeki bir dosyayı kurtarmaya çalışırsa, bu araç `dist/keep.js`yi hâlâ yoksayılmış olarak bildirir, neden olarak 3. satır kuralını adlandırır ve olumsuzlamayı sessizce işe yaramış gibi göstermek yerine ayrı olarak gölgeli olarak işaretler.

Sonuç tablosu, test edilen her yola net bir evet/hayır göz ardı edilen kararı, kesin kural metnini ve buna karar veren satır numarasını ve - uygun olduğunda - gölgeli bir olumsuzlamayı veya devralınan bir ana dizin kuralını açıklayan sade dilli bir notu içeren kendi satırını verir. Kafa karıştırıcı bir .gitignore dosyasını, taahhütte bulunmadan önce gerçekten üzerinde düşünebileceğiniz bir dosyaya dönüştüren ayrıntı budur.