# हुक कॉन्फ़िगर करें: चुनें कि वे क्या स्कैन करें

> फ़ाइलें स्कैन करने वाले हुक किन चीज़ों को छोड़ें, यह सभी हुक के लिए एक साथ या किसी एक के लिए अलग से तय करें।

कैनोनिकल: https://lagune.ai/hi-IN/docs/hooks/configure
भाषा: hi-IN
मूल: https://lagune.ai/docs/hooks/configure
आख़िरी अपडेट: 2026-11-06

`checkers` ब्लॉक, जो `.lagune/configs.json` फ़ाइल में होता है, तय करता है कि फ़ाइलें स्कैन करने वाले हुक किन चीज़ों को छोड़ें, सभी हुक के लिए एक साथ या किसी एक के लिए अलग से।

## कॉन्फ़िगर करें

कमांड लाइन से पाथ और पैटर्न जोड़ें या हटाएँ। पैटर्न को कोट में रखें, ताकि शेल उसे वैसा ही छोड़ दे जैसा लिखा है:

```bash
npx lagune write add --ignore test/fixtures
npx lagune write add --ignore 'packages/*/dist' --checker secrets
npx lagune write remove --ignore test/fixtures
```

या उन्हें [डैशबोर्ड](https://lagune.ai/hi-IN/docs/get-started/dashboard) के Settings पेज में चुनें, या सीधे फ़ाइल में सेट करें:

```json
{
  "checkers": {
    "ignore": ["test/fixtures"],
    "secrets": { "gitignore": false, "ignore": ["test/fixtures", "temp"] }
  }
}
```

### सेटिंग्स

| कुंजी       | वैल्यू                         | डिफ़ॉल्ट | विवरण                                                                                                                  |
| ----------- | ------------------------------ | -------- | ---------------------------------------------------------------------------------------------------------------------- |
| `gitignore` | `true` या `false`              | `true`   | जिसे **Git** अनदेखा करता है, उसे छोड़ दें। **Git** जिस फ़ाइल को ट्रैक करता है, वह हर हाल में स्कैन होती है।            |
| `ignore`    | प्रोजेक्ट रूट से पाथ या पैटर्न | `[]`     | हर पाथ या पैटर्न जिससे मेल खाता है, उसे और उसके नीचे की हर चीज़ को छोड़ दें, भले ही **Git** उस फ़ाइल को ट्रैक करता हो। |

`checkers` के सबसे ऊपरी स्तर पर रखी कुंजी हर चेकर पर लागू होती है। किसी चेकर के नाम के नीचे रखी कुंजी सिर्फ़ उसी चेकर पर लागू होती है और साझा कुंजी की जगह ले लेती है। इसलिए उदाहरण में `secrets` वह भी स्कैन करता है जिसे **Git** अनदेखा करता है, और `test/fixtures` और `temp` को छोड़ देता है। जब `write add --ignore` किसी चेकर को पहली बार उसकी अपनी सूची देता है, तो वह सूची साझा सूची की कॉपी से शुरू होती है।

### पैटर्न

पैटर्न प्रोजेक्ट रूट से शुरू होता है, इसलिए `*.generated.ts` सिर्फ़ रूट की फ़ाइलों तक पहुँचता है और `**/*.generated.ts` किसी भी गहराई पर मौजूद फ़ाइलों तक। नाम हूबहू मेल खाने चाहिए, बड़े और छोटे अक्षरों समेत।

| पैटर्न              | क्या छोड़ता है                                         |
| ------------------- | ------------------------------------------------------ |
| `dist`              | प्रोजेक्ट रूट पर मौजूद `dist`                          |
| `packages/*/dist`   | `dist`, जो `packages` के नीचे हर फ़ोल्डर में हो        |
| `**/dist`           | हर `dist`, किसी भी गहराई पर                            |
| `**/*.generated.ts` | हर वह फ़ाइल जिसका नाम `.generated.ts` पर ख़त्म होता है |
| `fixture-?`         | `fixture-a`, `fixture-1` और ऐसे ही दूसरे नाम           |
| `[ab]-cache`        | `a-cache` और `b-cache`                                 |
| `[*]x`              | `*x`, जिसमें `*` एक साधारण अक्षर है                    |

## नतीजा कैसे पढ़ें

रिपोर्ट के आख़िर में लिखा होता है कि स्कैन ने कितने पाथ छोड़े, और उन्हें किसने अनदेखा किया:

```text
Skipped 25 paths that Git ignores and 3 paths that .lagune/configs.json ignores. Name one with --dir or --file to scan it.
```

`--dir` या `--file` से दिया गया पाथ हर हाल में स्कैन होता है, सेटिंग्स चाहे जो कहें। जिस सेटिंग को इंजन पढ़ नहीं पाता, वह चेकर को एक एरर के साथ रोक देती है जिसमें उस सेटिंग का नाम होता है, जैसे ऐसा पैटर्न जो `!` या स्पेस से शुरू होता हो, प्रोजेक्ट से बाहर निकल जाता हो, कोई ब्रैकेट खुला छोड़ देता हो, या मेल खाने में बहुत ज़्यादा समय लेता हो।

## अक्सर पूछे जाने वाले सवाल

### क्या Lagune ये सेटिंग्स मेरे लिए खुद तय करता है?

नहीं। charter चरण उन कमिट किए गए फ़ोल्डरों की सूची बनाता है जिनके बारे में प्रोजेक्ट पढ़कर वह पाता है कि वे बचाने लायक आपका कोड नहीं हैं, जैसे कमज़ोर दिखने के लिए लिखे गए टेस्ट फ़िक्स्चर, और सिर्फ़ वही फ़ोल्डर दर्ज करता है जिन्हें आप नंबर से चुनते हैं।

### चेकर को वह सब कब स्कैन करना चाहिए जिसे Git अनदेखा करता है?

जब रिपॉज़िटरी ऐसी हो जिस पर आप भरोसा नहीं कर सकते, क्योंकि उसकी अपनी .gitignore फ़ाइलें कोड छिपा सकती हैं, या जब किसी बिल्ड फ़ोल्डर में बिल्ड के समय इनलाइन की गई कोई कुंजी हो सकती है। हर चेकर के लिए या किसी एक के लिए gitignore को false पर सेट करें।
