बुनियादी उपयोग
त्वरित शुरुआत
अपनी पूरी रिपॉजिटरी पैक करें:
repomixसामान्य उपयोग के मामले
विशिष्ट डायरेक्टरी पैक करें
repomix path/to/directoryविशिष्ट फ़ाइलें शामिल करें
ग्लोब पैटर्न का उपयोग करें:
repomix --include "src/**/*.ts,**/*.md"फ़ाइलें बाहर रखें
repomix --ignore "**/*.log,tmp/"आउटपुट को कई फ़ाइलों में विभाजित करें
बड़े कोडबेस के साथ काम करते समय, पैक किया गया आउटपुट कुछ AI टूल्स द्वारा लगाई गई फ़ाइल आकार सीमाओं से अधिक हो सकता है (जैसे Google AI Studio की 1MB सीमा)। आउटपुट को स्वचालित रूप से कई फ़ाइलों में विभाजित करने के लिए --split-output का उपयोग करें:
repomix --split-output 1mbयह इस तरह नंबर वाली फ़ाइलें बनाता है:
repomix-output.1.xmlrepomix-output.2.xmlrepomix-output.3.xml
आकार इकाइयों के साथ निर्दिष्ट किया जा सकता है: 500kb, 1mb, 2mb, 1.5mb, आदि। दशमलव मान समर्थित हैं।
NOTE
संदर्भ बनाए रखने के लिए फ़ाइलों को शीर्ष-स्तरीय डायरेक्टरी के अनुसार समूहीकृत किया जाता है। एक फ़ाइल या डायरेक्टरी को कभी भी कई आउटपुट फ़ाइलों में विभाजित नहीं किया जाएगा।
रिमोट रिपॉजिटरी
# GitHub URL का उपयोग करके
repomix --remote https://github.com/user/repo
# शॉर्टहैंड का उपयोग करके
repomix --remote user/repo
# --remote के बिना शॉर्टहैंड का उपयोग करके (स्वतः पहचाना गया)
repomix user/repo
# विशिष्ट ब्रांच/टैग/कमिट
repomix --remote user/repo --remote-branch main
repomix --remote user/repo --remote-branch 935b695फ़ाइल सूची इनपुट (stdin)
अधिकतम लचीलेपन के लिए stdin के माध्यम से फ़ाइल पथ पास करें:
# find कमांड का उपयोग करके
find src -name "*.ts" -type f | repomix --stdin
# ट्रैक की गई फ़ाइलें प्राप्त करने के लिए git का उपयोग करके
git ls-files "*.ts" | repomix --stdin
# फ़ाइलें खोजने के लिए ripgrep (rg) का उपयोग करके
rg --files --type ts | repomix --stdin
# विशिष्ट सामग्री वाली फ़ाइलें खोजने के लिए grep का उपयोग करके
grep -l "TODO" **/*.ts | repomix --stdin
# विशिष्ट सामग्री वाली फ़ाइलें खोजने के लिए ripgrep का उपयोग करके
rg -l "TODO|FIXME" --type ts | repomix --stdin
# फ़ाइलें खोजने के लिए sharkdp/fd का उपयोग करके
fd -e ts | repomix --stdin
# सभी फ़ाइलों में से चुनने के लिए fzf का उपयोग करके
fzf -m | repomix --stdin
# fzf के साथ इंटरैक्टिव फ़ाइल चयन
find . -name "*.ts" -type f | fzf -m | repomix --stdin
# glob पैटर्न के साथ ls का उपयोग करके
ls src/**/*.ts | repomix --stdin
# फ़ाइल पथ वाली फ़ाइल से
cat file-list.txt | repomix --stdin
# echo के साथ प्रत्यक्ष इनपुट
echo -e "src/index.ts\nsrc/utils.ts" | repomix --stdin--stdin विकल्प आपको फ़ाइल पथों की सूची को Repomix में पाइप करने की अनुमति देता है, जो आपको पैक करने के लिए फ़ाइलों का चयन करने में अधिकतम लचीलापन प्रदान करता है।
--stdin का उपयोग करते समय, निर्दिष्ट फ़ाइलें प्रभावी रूप से include पैटर्न में जोड़ी जाती हैं। इसका मतलब है कि सामान्य include और ignore व्यवहार अभी भी लागू होता है: stdin के माध्यम से निर्दिष्ट फ़ाइलें अभी भी बाहर रखी जाएंगी यदि वे ignore पैटर्न से मेल खाती हैं।
NOTE
--stdin का उपयोग करते समय, फ़ाइल पथ सापेक्ष या पूर्ण हो सकते हैं, और Repomix स्वचालित रूप से पथ रिज़ॉल्यूशन और डुप्लिकेशन हैंडलिंग करेगा।
कोड कम्प्रेशन
कोड संरचना को संरक्षित करते हुए टोकन संख्या कम करें। विवरण के लिए कोड कम्प्रेशन गाइड देखें।
repomix --compress
# आप इसे रिमोट रिपॉजिटरी के साथ भी उपयोग कर सकते हैं:
repomix --remote yamadashy/repomix --compressGit एकीकरण
AI विश्लेषण के लिए विकास संदर्भ प्रदान करने हेतु Git जानकारी शामिल करें:
# git diffs शामिल करें (अप्रतिबद्ध परिवर्तन)
repomix --include-diffs
# git कमिट logs शामिल करें (डिफ़ॉल्ट रूप से अंतिम 50 कमिट)
repomix --include-logs
# विशिष्ट संख्या में कमिट शामिल करें
repomix --include-logs --include-logs-count 10
# diffs और logs दोनों शामिल करें
repomix --include-diffs --include-logsयह निम्नलिखित के बारे में मूल्यवान संदर्भ जोड़ता है:
- हाल के परिवर्तन: Git diffs अप्रतिबद्ध संशोधन दिखाते हैं
- विकास पैटर्न: Git logs प्रकट करते हैं कि कौन सी फ़ाइलें आमतौर पर एक साथ बदली जाती हैं
- कमिट इतिहास: हाल के कमिट संदेश विकास फोकस में अंतर्दृष्टि प्रदान करते हैं
- फ़ाइल संबंध: समझना कि कौन सी फ़ाइलें एक ही कमिट में संशोधित होती हैं
टोकन संख्या अनुकूलन
अपने कोडबेस के टोकन वितरण को समझना AI इंटरैक्शन को अनुकूलित करने के लिए महत्वपूर्ण है। अपने पूरे प्रोजेक्ट में टोकन उपयोग को देखने के लिए --token-count-tree विकल्प का उपयोग करें:
repomix --token-count-treeयह टोकन गिनती के साथ आपके कोडबेस का पदानुक्रमित दृश्य प्रदर्शित करता है:
🔢 Token Count Tree:
────────────────────
└── src/ (70,925 tokens)
├── cli/ (12,714 tokens)
│ ├── actions/ (7,546 tokens)
│ └── reporters/ (990 tokens)
└── core/ (41,600 tokens)
├── file/ (10,098 tokens)
└── output/ (5,808 tokens)आप बड़ी फ़ाइलों पर ध्यान केंद्रित करने के लिए न्यूनतम टोकन सीमा भी सेट कर सकते हैं:
repomix --token-count-tree 1000 # केवल 1000+ टोकन वाली फ़ाइलें/डायरेक्टरी दिखाएँयह आपकी सहायता करता है:
- टोकन-भारी फ़ाइलों की पहचान करने में जो AI संदर्भ सीमा को पार कर सकती हैं
- फ़ाइल चयन को अनुकूलित करने में
--includeऔर--ignoreपैटर्न का उपयोग करके - संपीड़न रणनीतियों की योजना बनाने में सबसे बड़े योगदानकर्ताओं को लक्षित करके
- सामग्री बनाम संदर्भ को संतुलित करने में जब AI विश्लेषण के लिए कोड तैयार किया जा रहा हो
आउटपुट फ़ॉर्मेट
XML (डिफ़ॉल्ट)
repomix --style xmlMarkdown
repomix --style markdownJSON
repomix --style jsonप्लेन टेक्स्ट
repomix --style plainअतिरिक्त विकल्प
टिप्पणियाँ हटाएँ
समर्थित भाषाओं और विवरण के लिए टिप्पणी हटाना देखें।
repomix --remove-commentsलाइन नंबर दिखाएँ
repomix --output-show-line-numbersक्लिपबोर्ड पर कॉपी करें
repomix --copyसुरक्षा जाँच अक्षम करें
Repomix क्या पता लगाता है, इसके विवरण के लिए सुरक्षा देखें।
repomix --no-security-checkकॉन्फ़िगरेशन
कॉन्फ़िगरेशन फ़ाइल आरंभ करें:
repomix --initविस्तृत विकल्पों के लिए कॉन्फ़िगरेशन गाइड देखें।
संबंधित संसाधन
- आउटपुट फ़ॉर्मेट - XML, Markdown, JSON और प्लेन टेक्स्ट फ़ॉर्मेट के बारे में जानें
- कमांड लाइन विकल्प - पूर्ण CLI संदर्भ
- प्रॉम्प्ट उदाहरण - AI विश्लेषण के लिए उदाहरण प्रॉम्प्ट
- उपयोग के मामले - वास्तविक उदाहरण और वर्कफ़्लो