2015-12-09 18 views
7

में WinMerge को डिफ/मर्ज टूल के रूप में सेट करना मैं वीएस 2015 में WinMerge को डिफॉल्ट डिफ टूल के रूप में सेट करना चाहता हूं, और मैं इसे वैश्विक रूप से नहीं कर सकता। मुझे अपने स्थानीय ([समाधान डीआईआर] /। Git/config) फ़ाइल को संपादित करने की आवश्यकता है, और यह पूरी तरह से काम करता है, लेकिन जब मैं इसे वैश्विक रूप से फ़ाइल ([उपयोगकर्ता फ़ोल्डर]/gitconfig संपादित करने की कोशिश करता हूं) यह वीएस 2015 में काम नहीं करता है (मानक वीएस diff उपकरण का उपयोग किया जाता है)। हर बार जब मैं गिट के लिए नया समाधान जोड़ता हूं तो सेटिंग्स को लागू करने में थोड़ा परेशान होता है।विजुअल स्टूडियो 2015

यहाँ मेरी config है

[diff] 
tool = winmerge 
[difftool] 
prompt = true 
[difftool "winmerge"] 
path = d:\\WinMerge\\winmergeu.exe 
cmd = \"d:\\WinMerge\\WinMergeU.exe\" \"$LOCAL\" \"$REMOTE\" 
[merge] 
tool = winmerge 
[mergetool] 
prompt = true 
[mergetool "winmerge"] 
path = d:\\WinMerge\\winmergeu.exe 
cmd = \"d:\\WinMerge\\winmergeu.exe\" -u -e -dl \"Local\" -dr \"Remote\" $LOCAL $REMOTE $MERGED 
+0

क्या 'Git config merge.tool winmerge' के बारे में की एक सूची है ? – Claudio

+0

बस कोशिश की है। काम नहीं करता – Padzonk

+0

क्या आपने '[diff]' के तहत 'guitool = winmerge' जोड़ने का प्रयास किया है? यह मेरी एकमात्र अंतर है जो मैं अपनी कॉन्फ़िगर की तुलना में देख सकता हूं, जो कम से कम पुराने वीएस संस्करण (मेरे पास गिट एक्सटेंशन प्लगइन है) के साथ काम करता है। यदि 'git difftool' के लिए कॉल विकल्प '--गुई' है, तो गिट' diff.tool' के बजाय 'diff.guitool' की तलाश करता है। – sendaran

उत्तर

12

मैं VS2015 SP1 और WinMerge मेरे रास्ते पर, कुछ भी नहीं मेरी समाधान .git/config में स्थापित है और .gitconfig में निम्नलिखित है (सी के तहत: \ उपयोगकर्ताओं \ उपयोगकर्ता नाम), और यह काम कर रहा है:

[diff] 
    tool = winmerge 
[difftool "winmerge"] 
    cmd = winmergeu.exe -e -ub -x -wl -u -maximise -dl "base" -dr "mine" \"$LOCAL\" \"$REMOTE\" 
+0

इसलिए मुझे एहसास हुआ कि वीएस 2017 का उपयोग करने वालों के लिए, टीम एक्सप्लोरर में ** मर्ज ** बटन पर क्लिक करें संघर्षों को हल करने के लिए एक नया वीएस शामिल diff टूल लाएगा। –

-1

जादू के रूप में काम करता है .gitconfig (वी.एस. 2015) के साथ समाधान। हालांकि, विंडोज एक्सप्लोरर फ़ाइल को .gitconfig पर पुनर्नामित करने से इंकार कर देता है। मैंने कमांड प्रॉम्प्ट का नाम इस्तेमाल किया।

ren aaa ".gitconfig" 

कोई दृश्य स्टूडियो पुनरारंभ करने की आवश्यकता नहीं है।

+0

प्रश्न का उत्तर नहीं देता है ... –

1

@gezzahead के अलावा (और मैंने guitool प्रविष्टि को अच्छी माप के लिए जोड़ा) के अलावा, मैंने पाया कि डोमेन नीति में मैंने दो "होम" निर्देशिकाएं बनाई हैं और इसके परिणामस्वरूप दो .gitconfigs - ए) विंडोज़ डिफ़ॉल्ट सी: \ उपयोगकर्ता \ jsmith \ .gitconfig और एच: \। gitconfig (मेरा एच: ड्राइव एक मैप ड्राइव है जो आईटी को "होम फोल्डर" कहते हैं)।

मैंने नीचे की तरह कुछ का उपयोग करके एक सिम्लिंक बनाया है (आपको इसे संपादित करने की आवश्यकता होगी), विजुअल स्टूडियो ने WinMerge लाया।

mklink H:\.gitconfig C:\users\jsmith\.gitconfig 
बस संपूर्णता के लिए

, मैं Win10 x64 चल रहा था, वी.एस. 2015 अपडेट 2, और नीचे मेरी config (थोड़ा सेंसर)

PS> git config --global --list 
user.name=John Smith 
[email protected] 
diff.tool=winmerge 
diff.guitool=winmerge 
difftool.winmerge.path=c:/Program Files (x86)/winmerge/winmergeu.exe 
difftool.winmerge.cmd=winmergeu.exe /e /x /u /wl /maximize -dl base -dr mine "$LOCAL" "$REMOTE" 
संबंधित मुद्दे