मेरा मानना है कि ई200012 का अर्थ है अंतर्निहित प्रक्रिया (मिश्रित) गैर-शून्य निकास कोड से निकलती है। Diff ऑपरेशन के परिणाम इंगित करने के लिए बहुत से diff उपकरण ऐसा करते हैं (0 = कोई अंतर 1 = अंतर, आदि)।
हालांकि मैल्ड का मेरा संस्करण गैर-शून्य निकास कोड का उपयोग नहीं करता है, मुझे पता है कि कोलोर्डिफ़ करता है, जो निर्देशिका के दौरान एसवीएन को रोकता है-"svn diff" क्रॉलिंग, जैसा कि उपरोक्त आपके उदाहरण में है। इसे उस फ़ाइल पर आज़माएं जिसमें परीक्षण में कोई बदलाव नहीं है।
एक अच्छा ठीक अपनी खुद की diff आदेश बनाने के लिए करने के लिए, मान लीजिए कि आप कहते हैं यह meld_svn जाने है:
#!/bin/bash
meld "$6" "$7"
exit 0
तो क्या हम कर रहे हैं मिलकर एक हो जाना के बाहर निकलने के कोड अनदेखी कर रहा है, और हमारे अपने साथ बाहर निकलने (जो जीता एसवीएन बंद नहीं करें)। तर्कों के चारों ओर उद्धरण का अर्थ है कि उनमें रिक्त स्थान वाले फ़ाइल नाम आपकी स्क्रिप्ट को नहीं तोड़ेंगे।
इसे निष्पादन योग्य बनाएं, फिर अपने ~/.subversion/config को संपादित करें और diff-cmd को "meld_svn" पर सेट करें। यह कॉलोर्डिफ़ के लिए बहुत अच्छा काम करता है, अगर मैल्ड वास्तव में गैर-शून्य निकास कोड से बाहर निकलता है तो अपनी समस्या को हल करने के साथ ठीक करना चाहिए।
मुझे उम्मीद है कि इससे मदद मिलती है।
दो मनमाना फ़ाइलों पर मिलकर एक हो जाना चलाने की कोशिश करें (Btw,
echo
diff-cmd के रूप में उपयोग करते हुए आप आसानी से SVN जाएँगी तो भेजना होगा क्या निरीक्षण करने के लिए अनुमति देता है)। क्या यह काम करता है? –हाँ ... यह काम कर रहा है ... अगर मैं कुछ फाइलों में बिना किसी प्रतिबद्धता में सामग्री बदलता हूं, तो मैल्ड "मेल्ड" निष्पादित करके अंतर दिखाता है। लेकिन विभिन्न संशोधनों की तुलना करना –
काम नहीं कर रहा है एसवीएन डिफ टूल में गुजरता है न कि तुलना करने के लिए केवल 2 पथ बल्कि लेबल्स जैसे अन्य विकल्प (आप एक स्क्रिप्ट को पास करके सभी विकल्पों को देख सकते हैं जो इसकी कमांड लाइन प्रिंट करता है)। शायद वेल्ड उन अतिरिक्त विकल्पों को स्वीकार नहीं करता है। मैं सिर्फ एक विचार के बारे में पता है। –