منصوبے کے بارے میں
commitlit ایک اوپن‑سورس ٹول ہے جو کامٹ پیغامات کا لنٹنگ کرتا ہے۔ یہ یقین دلاتا ہے کہ پیغامات Conventional Commits فارمیٹ کے مطابق ہوں، عام طور پر `type(scope?): subject` کی صورت میں لکھے جاتے ہیں، جہاں scope اختیاری ہے اور متعدد اسكوپ्स `/`، `\) اور `,` جیسے ڈیلیمیٹرز کے ساتھ سپورٹ کیے جاتے ہیں۔ عام ٹائپس میں build، chore، ci، docs، feat، fix، perf، refactor، revert، style اور test شامل ہیں، اور ان کو کنفیگریشن کے ذریعے customize کیا جا سکتا ہے۔
پروجیکٹ میں بنیادی CLI فراہم کی جاتی ہے جو `@commitlint/cli` کے طور پر انسٹال ہوتی ہے، اور ایک پروگرامنگ API بھی دستیاب ہے۔ کنفیگریشن خود بخود فائلوں جیسے `.commitlintrc`، `.commitlintrc.json`، `.commitlintrc.yaml`، `.commitlintrc.yml`، `.commitlintrc.js`، `.commitlintrc.cjs`، `.commitlintrc.mjs`، `.commitlintrc.ts`، `.commitlintrc.cts`، `.commitlintrc.mts`، `commitlint.config.js`، `commitlint.config.cjs`، `commitlint.config.mjs`، `commitlint.config.ts`، `commitlint.config.cts`، `commitlint.config.mts` سے لي کر، یا `package.json` یا `package.yaml` میں `commitlint` فیلڈ سے pickup ہوتی ہے۔
شیر کردہ کنفیگز انسٹال اور ایکسٹینڈ کی جا سکتی ہیں، شامل @commitlint/config-angular، @commitlint/config-conventional، @commitlint/config-lerna-scopes، @commitlint/config-nx-scopes، @commitlint/config-patternplate اور @commitlint/config-workspace-scopes۔ کاستم شیر کردہ کنفیگز کا نام `commitlint-config-*` pattern پر مبنی ہونا چاہیے تاکہ انہیں `extends` فیلڈ میں مختصر نام سے رجوع کیا جا سکے۔
API پکیجوں میں format، lint، load اور read شامل ہیں، جو پروگرامنگ طور پر کامٹ پیغامات کا لنٹنگ کرنے، کنفیگریشن لوڈ کرنے، اور محدد رینج یا آخری ایڈٹ سے پیغامات پڑھنے کی اجازت دیتے ہیں۔ اضافی ٹولز میں commitizen ایڈاپٹر اور prompt CLI شامل ہیں۔
شروع کرنے کی رہنمائیں لوکل سیٹ اپ (جس میں husky کے ساتھ کامٹ پر پیغامات لنٹنگ کی جاتی ہیں) اور CI سیٹ اپ (جس میں CI Билڈز کے دوران پیغامات لنٹنگ کی جاتی ہیں) کو cover karti hain۔ پروجيکٹ ایک monorepo olarak develop کیا جاتا ہے اور Node.js LTS >= 22.12.0 اور git >= 2.13.2 کی ضرورت ہوتی ہے۔ یہ MIT لائسنس کے تحت جاری ہے۔ متعلقہ پروجيکٹس conventional-changelog، commitizen اور create-semantic-module شامل ہیں۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.