मेरे गिट रेपो में मेरी वर्तमान शाखा के अलावा मेरे पास कोड का एक टुकड़ा है, और मुझे यकीन नहीं है कि कौन सी प्रतिबद्धता और कौन सी शाखा है। मैं अब तक एक विशिष्ट स्ट्रिंग के लिए प्रतिबद्ध सभी फ़ाइलों में कैसे खोज सकता हूं (और बाद में कोड की उस पंक्ति के आसपास दिखाता हूं)?गिट-रेपो सभी प्रतिबद्ध फ़ाइलों (अज्ञात शाखा और प्रतिबद्ध) में स्ट्रिंग के लिए खोज रहे हैं
उत्तर
उपयोग git grep
:
git grep "string" $(git rev-list --all)
git rev-list --all
यह परियोजना के पूरे इतिहास में खोज बनाता है।
कि इस तरह एक आउटपुट दे देंगे:
git branch --contains <commit>
क्या मैं केवल एक फ़ाइल/पथ में खोज करने के लिए निर्दिष्ट कर सकता हूं? (उदा। मैं एक विशिष्ट स्थिरता की खोज कर रहा हूं और केवल इस पथ में खोजना चाहता हूं) –
हां: 'git grep" string "$ (git rev-list --all) - पथ'। – jszakmeister
यह बड़े इतिहास के लिए काम नहीं करता है :( 'git grep 'abc' echo $ (git rev-list --all)' 'zsh: तर्क सूची बहुत लंबी: गिट' – tback
git branch "branch-name"
के साथ शाखा बदलें और फिर git grep "specific string"
को अपनी रिपोजिटरी रूट में बदलें। यदि आपके पास बहुत सारी शाखाएं नहीं हैं तो आपको वहां पर्याप्त तेज़ी से मिलना चाहिए। प्रतिबद्ध पता लगाने के लिए
ऊपर git grep "string"
भिन्नता आप दे रहा है, तो ":
<commit>:<path>:<matched line>
तो फिर तुम git branch --contains
उपयोग कर सकते हैं पता लगाने के लिए जो शाखा प्रतिबद्ध पर है सूची बहुत लंबी "त्रुटियों, आप इसके बजाय git log -S
का उपयोग कर सकते हैं। -S विकल्प फ़ाइलों को अंजाम दिया की सामग्री को खोज: (। "प्रो Git" पुस्तक में अधिक "searching" के तहत)
git log -Sstring # look for string in every file of every commit
git log -Sstring -- path/to/file # only look at the history of the named file
- 1. गिट प्रतिबद्ध प्रति शाखा
- 2. एचजी लगभग गलत शाखा के लिए प्रतिबद्ध
- 3. एसवीएन शाखा प्रतिबद्ध - प्रयोगात्मक प्रतिबद्धता
- 4. Git उसी शाखा पर दो फ़ाइलों, एक ही अंतर प्रतिबद्ध
- 5. प्रतिबद्ध टेम्पलेट
- 6. Mercurial हुक - एक प्रतिबद्ध संदेश पूर्व प्रतिबद्ध
- 7. प्रतिबद्ध करने के लिए कैसे प्रतिबद्ध करें - एक शाखा का आधार है जो एक शाखा का आधार है
- 8. ए को प्रतिबद्ध करने वाली सभी शाखाएं दिखाएं और प्रतिबद्ध बी चालू नहीं है?
- 9. Mercurial प्री प्रतिबद्ध हुक
- 10. गिट एक प्रतिबद्ध संदेश प्रतिबद्ध है और कुछ भी नहीं?
- 11. किसी अन्य शाखा की प्रतिबद्ध प्रति
- 12. एसवीएन के साथ अज्ञात परिवर्तनीय में फ़ाइलों को केवल कैसे प्रतिबद्ध करें?
- 13. मैक के लिए github आंशिक चेकइन/प्रतिबद्ध
- 14. गिट लुक प्रतिबद्ध आईडी के लिए प्रतिबद्ध आईडी
- 15. उपclip ओवरराइड और प्रतिबद्ध?
- 16. 'प्रतिबद्ध' और 'संशोधन'
- 17. Mercurial चेरी प्रतिबद्ध करने के लिए परिवर्तन
- 18. QML- प्रारूप फ़ाइलों के लिए एक पार्सर खोज रहे हैं
- 19. एसवीएन प्रतिबद्ध
- 20. मर्ज में अतिरिक्त परिवर्तन के लिए प्रतिबद्ध
- 21. "से बचने के लिए कैसे मर्ज शाखा 'name_of_branch' में संदेशों के लिए प्रतिबद्ध?
- 22. गिट में संशोधित (लेकिन प्रतिबद्ध नहीं) फ़ाइलों को अनदेखा करें?
- 23. मर्क्युरियल: पहले "एचजी प्रतिबद्ध"
- 24. प्रतिबद्ध संदेश
- 25. "गिट प्रतिबद्ध --amend" में प्रतिबद्ध संदेश चरण को कैसे छोड़ें?
- 26. गिट, प्रतिबद्ध करने के लिए परिवर्तन जोड़ना, झंडे जोड़ने और प्रतिबद्ध करने के बीच अंतर
- 27. गिट प्रतिबद्ध शैली: सभी बदली गई फ़ाइलों को एक समय में एक या एक बार में?
- 28. Git लाने के लिए अशक्त प्रतिबद्ध जब
- 29. गिट प्रतिबद्ध
- 30. प्रतिबद्ध के बाद चयन
संभावित डुप्लिकेट: http://stackoverflow.com/questions/ 746684/कैसे-से-सर्च-थ्रू-ऑल-कॉमिट-इन-द-रिपोजिटरी –