2011-02-06 15 views
6

मुझे पता है कि git diff --word-diff=color काम करने वाले पेड़ और सिर के बीच एक शब्द भिन्न होता है, लेकिन क्या git log के साथ समान प्रकार का आउटपुट प्राप्त करने का कोई तरीका है?क्या आप 'गिट लॉग' के साथ एक शब्द-diff प्राप्त कर सकते हैं?

+0

Git के किस संस्करण का उपयोग कर रहे काम कर मिल गया लगता है? संस्करण 1.5.5.6 में, 'गिट diff - रंग-शब्द rev1..rev2' केवल अपेक्षित रंगीन आउटपुट देता है। यदि मैं 'git diff --word-diff = color rev1..rev2' का प्रयास करता हूं तो यह गिट-diff उपयोग दिखाता है। – yasouser

+0

आपको एक छोटी सी स्क्रिप्ट लिखनी पड़ सकती है - इस तरह से 'गिट लॉग' करें, यह सिर्फ SHA1s प्रिंट करता है, फिर उन SHA1s के माध्यम से फिर से चलाएं और 'git diff --word-diff = color $ SHA1^$ SHA1 करें '। तो निश्चित रूप से आप उस पर एक गिट उपनाम असाइन कर सकते हैं। – MatrixFrog

उत्तर

9

--color-words के बारे में क्या? इसके अतिरिक्त आपको किसी भी तरह से diff को सक्रिय करना होगा।

git log --color-words -p 

मुझे एक रंगीन डिफ दिखाता है।

+0

वह लाइन भिन्न होता है, एक शब्द भिन्न नहीं है – dan

+0

1.7.1 पर और मेरी सेटिंग्स के साथ (कुछ भी भिन्न नहीं है, शायद 'color.ui = auto' के अलावा यह एक शब्द diff आउटपुट करता है।) बेशक केवल जब आपके स्रोत में शब्द होता है अंतर (= पूरी जोड़/हटाई गई रेखाओं से भिन्न अंतर)। –

+0

ठीक है यह काम करता है। – dan

1

ठीक मैं मैं इसके साथ

git log -m -p --word-diff=plain 
+0

यह मुझे एक त्रुटि देता है: 'घातक: अपरिचित तर्क: --word-diff = plain'। आपका गिट संस्करण क्या है ('git --version')? –

+0

गिट संस्करण 1.7.3.2। लेकिन मेरे लिनक्स बॉक्स पर, जो वर्तमान में 1.7.0.4 है, मुझे एक ही त्रुटि मिलती है। – dan

+0

ऐसा लगता है कि उन्होंने इन संस्करणों के बीच 'ग्रिड लॉग' में '--word-diff' को समर्थन जोड़ा (जो समझ में आता है, क्योंकि विकल्प 'गिट diff' के लिए पहले से ही संभव था)। –

संबंधित मुद्दे