Git: git add -i या git add -e का उपयोग करते समय अधिक संदर्भ दिखाएं?


99

मैं चुनिंदा रूप से एक बड़ी फ़ाइल के कुछ हिस्से कर रहा हूं और मैं प्रत्येक हंक के आसपास अधिक संदर्भ देखना चाहता हूं। क्या यह संभव है?

जवाबों:


127

संक्षिप्त उत्तर: नहीं।

git diffएक -U<n>विकल्प है जो आपको एक परिवर्तन के आसपास दिखाने के लिए लाइनों की संख्या को अनुकूलित करने की अनुमति देता है। उदाहरण के लिए, git diff -U5 ...संदर्भ की 5 लाइनें दिखाएंगे। जहां तक ​​मैं बता सकता हूं, इंटरैक्टिव मोड में अलग-अलग डिस्प्ले के लिए ऐसा कोई विकल्प उपलब्ध नहीं है।


7
क्या -U<infinity>पूरी फ़ाइल दिखाने का कोई विकल्प है? (या एक बड़ी संख्या "अच्छा पर्याप्त है?"
टाइटेनियम

2
मैं यह उल्लेख करना चाहूंगा कि git diff -U<n>प्रत्येक बदली हुई रेखा के दोनों ओर संख्या का उपयोग किया जाता है। इसलिए यदि आपकी एक पंक्ति बदल गई है, git diff -U5तो आपको 11 लाइनें दिखाई देंगी (मान लें कि एक पंक्ति फ़ाइल के अंत में शुरू नहीं है।)
ArtOfWarfare

4
इस के git diffलिए git add --patchया नहीं हैgit add --interactive
0xcaff

1
@titaniumdecoy, मैंने पोस्ट किया कि एक अलग प्रश्न के रूप में stackoverflow.com/questions/28727424/…
Aleksandr Levchuk

3
फिर भी कोई हल नहीं?
विटाली ज़डनेविच

2

पुष्टि करने के लिए, यह 2019 में अभी भी संभव नहीं है।

एक बाहरी उपकरण jjlee/git-meld-indexमदद कर सकता है:

git-meld-indexरन meld- या कोई अन्य गिट डिफिसटूल ( kdiff3,, diffuseआदि) - आपको जीआईटी इंडेक्स में अंतःक्रियात्मक रूप से चरण परिवर्तन करने की अनुमति देने के लिए (जिसे गिट स्टेजिंग क्षेत्र भी कहा जाता है)।

यह की कार्यक्षमता के समान है git add -p, और git add --interactive

कुछ मामलों में मेल्ड git add -pउपकरण की तुलना में या स्टेजिंग फीचर का उपयोग करना आसान / तेज होता है git gui
ऐसा इसलिए है क्योंकि मेल्ड आपको अनुमति देता है, उदाहरण के लिए:

  • अधिक संदर्भ देखें ,
  • इंट्रा-लाइन अंतर देखता है
  • हाथ से संपादित करें और देखें 'लाइव' अलग-अलग अपडेट (हर कीपर के बाद अद्यतन)
  • nहर उस बदलाव के लिए जिसे आप छोड़ना चाहते हैं, बिना किसी परिवर्तन के नेविगेट करें
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.