2013-02-28 6 views
15

क्या फ़ाइल के वर्तमान संस्करण की तुलना करने के लिए vimdiff का उपयोग करने का कोई तरीका है और समान फ़ाइल n git संस्करण पहले?फ़ाइल के वर्तमान और पिछले गिट संस्करण के बीच vimdiff

उदाहरण के लिए, मैं शाखा मास्टर पर फ़ाइल foo.c पर काम कर रहा हूँ। मैं पुराने संस्करण से एक या दो लाइनों की प्रतिलिपि बनाने के लिए मास्टर ~ 10 से foo.c और foo.c के बीच vimdiff करना चाहता हूं।

पीएस मुझे गिट चेरी चुनने के बारे में पता है, लेकिन यह पूरी फाइलों के लिए है, न केवल कुछ पंक्तियों के लिए।

उत्तर

13

डुह! RTFM। मैं गिट difftool के लिए उपयोग केस नहीं होने के बारे में एक पीपीएस जोड़ रहा था, फिर सोच रहा था कि "क्या गिट difftool वास्तव में करता है ..."।

समाधान है:

git difftool master master~10 -- foo.c 

यही है, यह मानते हुए difftool पहले से ही सही ढंग से ~/.gitconfig में स्थापित किया जाएगा:

[diff] 
    tool = vimdiff 
[difftool] 
    prompt = false 
3

संभव Viewing all `git diffs` with vimdiff

की डुप्लीकेट तुम भी देख सकते हैं यह: http://usevim.com/2012/03/21/git-and-vimdiff/

+0

वाह Trev, आप निशान बंद त्वरित कर रहे हैं। यह सवाल आपने कितनी तेजी से देखा है, क्या आपको एक बॉट चल रहा है?!? –

+0

हे, नहीं। बस अच्छा समय। –

+0

जीवन की तरह :-) –

8

के साथ काम करने के लिए विम के तहत गिट, fugitive.vim - A Git wrapper so awesome, it should be illegal प्लगइन बहुत उपयोगी है। इसकी जांच - पड़ताल करें!

विमडिफ़ :Gdiff [revision] के साथ बनाया जा सकता है।

0

एक समाधान है कि Git config अधिभावी के बिना काम करता होगा

vimdiff file.tex <(git show master~2:file.tex) 
संबंधित मुद्दे