2012-10-15 6 views
9

OSX पर साथ का उपयोग Git, मैं अपने Git diffing उपकरण के रूप में diffmerge उपयोग कर रहा हूँ।कोई संकेतों के साथ diffmerge और कोई अन्य नाम

[diff] 
     tool = diffmerge 
[difftool "diffmerge"] 
     cmd = diffmerge \"$LOCAL\" \"$REMOTE\" 
[alias] 
     d = difftool --no-prompt 

अगर मैं सिर्फ git difftool का उपयोग यह हर एक फ़ाइल मैं diff करना चाहते हैं के लिए मुझे संकेत देगा: यहाँ मेरी .gitconfig है। इस के आसपास जाने के लिए, मैंने git d उपनाम बनाया और --no-prompt ध्वज जोड़ा।

वहाँ किसी भी तरह से मैं उर्फ ​​बिना दोहराया संकेतों को रोका जा सकता है? मैं difftool तहत prompt=false और prompt = NO डालने, साथ ही diffmerge आदेश के बगल में --no-शीघ्र झंडा चलती है, लेकिन इन में से कोई भी मदद की कोशिश की।

उत्तर

19

--no-prompt झंडा diffmerge आदेश

--no-prompt के बगल में आगे बढ़ (के रूप में मैं "How do I view 'git diff' output with a visual diff program?" में उल्लेख) difftool का एक तर्क है।
तो मैं पुष्टि करता हूं कि यह diffmerge के साथ काम नहीं करेगा।

मैं सीधे एक [difftool] धारा के तहत difftool

तहत prompt=false और prompt = NO डालने की कोशिश की, कि (नहीं [difftool "diffmerge"] के तहत)

आप another approach here, रैपर के आधार पर देख सकते हैं काम करना चाहिए: मदद कर सकते हैं उन आदेशों को डीबग करने के लिए।

git config --global difftool.diffmerge.cmd "diffmerge-diff.sh \"\$LOCAL\" \"\$REMOTE\"" \"\$BASE\"" \"\$MERGED\"" 
git config --global difftool.prompt false 
git config --global diff.tool diffmerge 
git difftool 
+0

महान काम किया! समझाने के लिए धन्यवाद। – Newtang

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