2012-06-22 11 views
11

मुझे TortoiseSVN के साथ विलय के बाद संघर्ष समाधान में कुछ परेशानी हो रही है।मैं TortoiseSVN के बाहरी विलय व्यवहार को कैसे कॉन्फ़िगर कर सकता हूं?

मैं इसे BeyondCompare पर डेटा भेजने की कोशिश कर रहा हूं और इसकी 3-तरफा विलय कार्यक्षमता का उपयोग कर रहा हूं। दुर्भाग्यवश, यह फ़ाइलों को अलग-अलग क्रम में भेजता है जो BeyondCompare की अपेक्षा कर रहा है, और इसलिए यह सभी गलत विलय हो जाता है।

यदि मैं एक्सप्लोरर में राइट-क्लिक करता हूं और TortoiseSVN-> सेटिंग्स कहता हूं, तो बाहरी प्रोग्राम-> मर्ज टूल के तहत मैं BeyondCompare के पथ को निर्दिष्ट कर सकता हूं, लेकिन तर्कों के बारे में कुछ भी नहीं है। मैं बाहरी विलय टूल को भेजे गए तर्कों को पुन: व्यवस्थित कैसे करूं ताकि मैं BeyondCompare में सही दिखने के लिए चीजें प्राप्त कर सकूं?

उत्तर

13

TortoiseSVN->Settings->Merge Tools संवाद में TortoiseSVN द्वारा बाहरी मर्ज एप्लिकेशन (इस मामले में BComp.exe) में भेजे गए पैरामीटर को नियंत्रित कर सकते हैं।

दोनों एक दो तरह से और तीन तरह से मर्ज के लिए BeyondCompare का उपयोग करने का एक उदाहरण BC support documentation में है:

3-way Merge (v3 Pro) 

1. Select Settings from Explorer's TortoisSVN submenu. 
2. Switch to the Merge Tool tab. 
3. Change the radio buttons from TortoiseMerge to External. 
4. In the path edits, enter: 
5. "C:\Program Files\Beyond Compare 3\BComp.exe" %mine %theirs %base %merged /title1=%yname /title2=%tname /title3=%bname /title4=%mname 

2-way Merge (v3 Std, v2) 

Use the same steps as above, but use the command line: 

`"C:\Program Files\Beyond Compare 3\BComp.exe" %mine %theirs /savetarget=%merged` 

यह Tortoise SVN docs में कवर किया जाता है, खंड 4.30.5.2 (उप-विषयों के लिए कोई लिंक - पेज खोज Merge Tool के लिए):

पैरामीटर प्रतिस्थापन का उपयोग डिफ प्रोग्राम के साथ ही किया जाता है।

%base - अपने या दूसरों के बिना मूल फ़ाइल में परिवर्तन

%bname - आधार फ़ाइल

%mine के लिए विंडो शीर्षक - अपने स्वयं के फ़ाइल, अपने परिवर्तन

%yname साथ - विंडो शीर्षक आपकी फ़ाइल

%theirs - फ़ाइल के रूप में यह भंडार

में है

%tname - भंडार

%merged में फ़ाइल के लिए विंडो शीर्षक - विरोध हुआ फ़ाइल, मर्ज आपरेशन के परिणाम

%mname - विलय फ़ाइल

उदाहरण के लिए के लिए विंडो शीर्षक, ख़ामख़ाह के साथ मर्ज:

C:\Path-To\P4Merge.exe %base %theirs %mine %merged

या KDiff3 साथ:

C:\Path-To\kdiff3.exe %base %mine %theirs -o %merged --L1 %bname --L2 %yname --L3 %tname

या Araxis साथ:

C:\Path-To\compare.exe /max /wait /3 /title1:%tname /title2:%bname /title3:%yname %theirs %base %mine %merged /a2

या WinMerge (2 के साथ।8 या बाद में): C:\Path-To\WinMerge.exe %merged

+0

महान टिप के लिए धन्यवाद: बाहरी करने के लिए रेडियो बटन ले जाएँ और ~

सी में पेस्ट करें। मैंने पैरामीटर के बिना बीसीओएमपी का इस्तेमाल किया और वास्तव में बीसीओएमपी के साथ सुझावों को मर्ज करने के लिए वास्तव में गलत था। तुलना 4 से परे अच्छी तरह से काम करता है। – Arvid

1

जवाब ऊपर मापदंडों के स्पष्टीकरण के रूप में हमारे लिए काम नहीं करता है उपयोगी लेकिन गलत (कम से कम हमारे लिए)

सही क्रम हमारे लिए है था: [Path]\BCompare.exe %base %mine %theirs %merged

यहां की चाल%% को स्वैप करना है और% के रूप में विलय करना उन्हें गलत जगहों की तुलना करें। एक संकेत के रूप में: स्थानीय फ़ाइल हमेशा दाईं ओर दृष्टि पर प्रदर्शित होना चाहिए। बाएं revabase और केंद्र revheEAD होना चाहिए।

+0

अजीब, मेरे पास यह '% मेरा%% आधार% विलय हो गया है, इसलिए स्थानीय छोड़ दिया गया है, आधार मध्य और सही है, और यह विलय का एक अच्छा काम करता है। –

0

सिर्फ DiffViewer के लिए:

परे 3 की तुलना करें और TortioseSVN (TortoiseSVN 1.9.4)

सेटिंग्स> DiffViewer। 3 \ BCompare.exe% बेस% मेरा \ Program Files (x86) \ तुलना से परे