checkers bloğu .lagune/configs.json içinde yer alır ve dosya tarayan hook'ların neleri dışarıda bırakacağını hepsi için ya da tek biri için belirler.
Yapılandırma
Kabuğun yazıldığı gibi bırakması için kalıpları tırnak içine alarak yolları ve kalıpları komut satırından ekleyin ya da kaldırın:
npx lagune write add --ignore test/fixtures
npx lagune write add --ignore 'packages/*/dist' --checker secrets
npx lagune write remove --ignore test/fixtures
Ya da bunları dosyada belirleyin:
{
"checkers": {
"ignore": ["test/fixtures"],
"secrets": { "gitignore": false, "ignore": ["test/fixtures", "temp"] }
}
}
Ayarlar
| Anahtar | Değer | Varsayılan | Açıklama |
|---|---|---|---|
gitignore | true veya false | true | Git'in yok saydıklarını dışarıda bırakır. Git'in takip ettiği bir dosya her durumda taranır. |
ignore | proje kökünden yollar veya kalıplar | [] | Her birinin eşleştiği şeyi ve altındaki her şeyi, Git'in takip ettiği bir dosya olsa bile dışarıda bırakır. |
checkers bloğunun en üst düzeyindeki bir anahtar her denetleyici için geçerlidir. Bir denetleyicinin adının altındaysa yalnızca o denetleyici için geçerlidir ve ortak anahtarın yerini alır, bu yüzden örnekte secrets denetleyicisi Git'in yok saydıklarını tarar ve test/fixtures ile temp yollarını dışarıda bırakır. write add --ignore komutu bir denetleyiciye ilk kez kendine ait bir liste verdiğinde, bu liste ortak listenin bir kopyası olarak başlar.
Kalıplar
Kalıp proje kökünden başlar, bu yüzden *.generated.ts kalıbı yalnızca oradaki dosyalara ulaşır, **/*.generated.ts kalıbı ise onlara her derinlikte ulaşır. Adlar büyük ve küçük harf dahil tam olarak eşleşir.
| Kalıp | Dışarıda bıraktığı |
|---|---|
dist | proje kökündeki dist |
packages/*/dist | dist, packages altındaki her klasörde |
**/dist | her derinlikteki her dist |
**/*.generated.ts | adı .generated.ts ile biten her dosya |
fixture-? | fixture-a, fixture-1 ve benzerleri |
[ab]-cache | a-cache ve b-cache |
[*]x | *x, düz bir * karakteriyle |
Sonucu nasıl okumalı
Rapor, taramanın kaç yolu dışarıda bıraktığını ve bunları neyin yok saydığını belirterek biter:
Skipped 25 paths that Git ignores and 3 paths that .lagune/configs.json ignores. Name one with --dir or --file to scan it.
--dir ya da --file ile belirtilen bir yol, ayarlar ne derse desin taranır. Motorun okuyamadığı bir ayar, örneğin ! ya da boşlukla başlayan, projenin dışına çıkan, bir köşeli parantezi açık bırakan ya da eşleşmesi çok uzun süren bir kalıp, denetleyiciyi o ayarı adıyla belirten bir hatayla durdurur.
Sıkça sorulan sorular
Hayır. Charter, okumasına göre savunulacak kodunuzun parçası olmayan commit edilmiş klasörleri (örneğin savunmasız görünmek üzere yazılmış test fixture'larını) listeler ve yalnızca numarasıyla seçtiklerinizi kaydeder.
Depoya güvenemediğinizde, çünkü deponun kendi .gitignore dosyaları kodu gizleyebilir, ya da bir derleme klasöründe derleme sırasında koda yerleştirilmiş bir anahtar bulunabileceğinde. Her denetleyici için ya da tek biri için gitignore değerini false yapın.
