Eris Client
एक C-आधारित CLI जो आपके git वर्कफ़्लो को सरल कमांड्स में लपेटता है — निर्देशित पारंपरिक कमिट्स, एक-बार कमिट और पुश, शाखा निर्माण, रिबेसिंग, और पुनः चलाने योग्य प्रोजेक्ट मैक्रोज़।
एरिस एक डेवलपर CLI है जो आपके गिट वर्कफ़्लो को एक संरचित कमिट प्रवाह, प्रोजेक्ट-स्थानीय मैक्रोज़ और एक प्रोलॉग-संचालित कमांड राउटर के साथ लपेटता है जो चेनिंग और नेगेशन का समर्थन करता है।
आप दैनिक कार्य के लिए रॉ गिट के बजाय eris चलाते हैं।
यह क्या करता है
eris init [नाम] — वर्तमान फ़ोल्डर में एक .eris/ निर्देशिका बनाता है, मैक्रोज़ फ़ाइल लिखता है, और .eris/ को गिट के स्थानीय बहिष्करण में जोड़ता है ताकि यह आपके रिपॉजिटरी में कभी दिखाई न दे।
eris commit / eris copush — एक ही बार में इंटरैक्टिव कमिट + पुश। आपको एक मेनू से पारंपरिक कमिट प्रकार (feat, fix, refactor, आदि) चुनने के लिए प्रेरित करता है, फिर एक संदेश मांगता है, इसे type: message के रूप में फ़ॉर्मेट करता है, सब कुछ स्टेज करता है, कमिट करता है और पुश करता है। प्रोजेक्ट के अंदर कहीं से भी काम करता है।
eris ignore <फ़ाइल> — एक फ़ाइल को .eris/.eris.ignore में जोड़ता है ताकि copush के दौरान इसे छोड़ दिया जाए। प्रति-प्रोजेक्ट, वैश्विक नहीं।
eris alias add <नाम> do <कमांड> do <कमांड> — एक नामित मैक्रो (शेल कमांड का अनुक्रम) को .eris/.eris.macros में सहेजता है।
eris alias run <नाम> / eris run <नाम> — एक सहेजे गए मैक्रो को चलाता है।
eris rebuild — CMake का उपयोग करके एरिस बाइनरी को स्वयं पुनर्निर्माण करता है।
eris root — पता लगाए गए एरिस प्रोजेक्ट रूट को प्रिंट करता है।
कमांड चेनिंग
कमांड राउटर प्रोलॉग में लिखा गया है। यह तर्क सूची में सीधे &&, ||, और not का समर्थन करता है:
eris init myapp && eris commit # केवल तभी कमिट करें जब init सफल हो
eris init || true # विफलता को अनदेखा करें
eris not init # init विफल होने पर सफल होता है
मैक्रोज़
मैक्रोज़ प्रोजेक्ट रूट पर .eris/.eris.macros में संग्रहीत होते हैं:
[deploy]
make build
git push origin main
ssh prod "systemctl restart app"
do विभाजक के साथ जोड़ें (कोई कोटिंग आवश्यक नहीं):
eris alias add deploy do make build do git push origin main
कोट्स के साथ जोड़ें (उन कमांड के लिए जिनमें अर्धविराम या शेल सिंटैक्स है):
eris alias add test "npm run lint" "npm test"
चलाएं:
eris run deploy
इंस्टॉल करें
make install
यह बाइनरी बनाता है, इसे /usr/local/bin/eris पर कॉपी करता है, और आपके .bashrc या .zshrc (स्वचालित रूप से पता लगाया गया) में एक उपनाम जोड़ता है। फिर:
source ~/.zshrc # या ~/.bashrc
निर्भरताएँ (cmake, gcc, libcurl, libssl, आदि) बिल्ड के दौरान स्वचालित रूप से जाँची और इंस्टॉल की जाती हैं यदि गायब हों।
स्रोत से बनाएं
make # कॉन्फ़िगर + बिल्ड (डीबग)
make CONFIG=Release
make JOBS=8
आवश्यक: cmake, gcc/g++, libcurl-dev, libssl-dev, pkg-config।
वैकल्पिक: प्रोलॉग राउटर के लिए SWI-Prolog (libswipl-dev) — यदि मौजूद नहीं है तो C राउटर पर वापस आ जाता है।
