git - मैं गिट diff का उपयोग कर दो स्प्रेडशीट्स के एक पठनीय diff कैसे बना सकता हूँ?




version-control merge (13)

आप इस मुफ्त ऑनलाइन उपकरण को आजमा सकते हैं - www.cloudyexcel.com/compare-excel/

पंक्तियों के संदर्भ में, हटाए गए, बदले गए आदि के संदर्भ में यह एक अच्छा दृश्य आउटपुट ऑनलाइन देता है।

इसके अलावा आपको कुछ भी इंस्टॉल करना नहीं है।

हमारे स्रोत कोड भंडार में हमारे पास बहुत से स्प्रेडशीट्स (xls) हैं। इन्हें आमतौर पर gnumeric या openoffice.org के साथ संपादित किया जाता है, और ज्यादातर dbUnit साथ यूनिट परीक्षण के लिए डेटाबेस को पॉप्युलेट करने के लिए उपयोग किया जाता है। Xls फ़ाइलों पर diffs करने का कोई आसान तरीका नहीं है जो मुझे पता है, और यह बेहद थकाऊ और त्रुटि प्रवण विलय कर देता है।

मैंने स्प्रेडशीट्स को एक्सएमएल में बदलने और नियमित रूप से भिन्न करने की कोशिश की है, लेकिन यह वास्तव में ऐसा लगता है कि यह अंतिम उपाय होना चाहिए।

मैं पाठ फ़ाइलों के साथ git साथ diffing (और विलय) करना चाहता हूँ। मैं यह कैसे करूँगा, उदाहरण के लिए जब git diff जारी करते हैं?


एमएस ऑफिस के नए संस्करण स्प्रेडशीट तुलना के साथ आते हैं, जो एक जीयूआई में काफी अच्छा अंतर करता है। यह ज्यादातर प्रकार के परिवर्तनों का पता लगाता है।


कोई बाहरी उपकरण के साथ त्वरित और आसान, जब तक आप दो शीट्स की तुलना कर रहे हैं तब तक अच्छी तरह से काम करता है:

  • एक तीसरी स्प्रेडशीट बनाएं
  • टाइप =if(Sheet1!A1 <> Sheet2!A1, "X", "") शीर्ष बाएं सेल में (या समतुल्य: सूत्रों में स्वचालित रूप से संदर्भों को स्वचालित रूप से सम्मिलित करने के लिए वास्तविक कक्षों पर क्लिक करें)
  • Ctrl + C (प्रतिलिपि), Ctrl + A (सभी का चयन करें), शीट भरने के लिए Ctrl + V (पेस्ट)।

यदि चादरें समान हैं, तो अंतर में हाइलाइट करते हुए एक्स में कुछ कोशिकाओं को छोड़कर यह स्प्रेडशीट खाली हो जाएगी। क्या अलग है यह देखने के लिए 40% तक अनजूम करें।


क्या आप subversion में अपने काम और अद्यतन करने के लिए TortoiseSVN का उपयोग करते हैं? इसमें एक diff टूल है, हालांकि Excel फ़ाइलों की तुलना करना अभी भी वास्तव में उपयोगकर्ता के अनुकूल नहीं है। मेरे पर्यावरण में (विन XP, Office 2007), यह साइड बाय साइड तुलना के लिए दो एक्सेल फ़ाइलों को खोलता है।

राइट क्लिक करें दस्तावेज़> कछुआ एसवीएन> लॉग दिखाएँ> संशोधन का चयन करें> "कार्यशील प्रतिलिपि के साथ तुलना करें" के लिए राइट क्लिक करें।


मुझे here एक ओपनऑफिस मैक्रो मिला जो ओपनऑफिस की तुलना दस्तावेजों को दो फाइलों पर काम करेगा। दुर्भाग्यवश, ओपनऑफिस की स्प्रेडशीट तुलना थोड़ा सा झटकेदार लगती है; मैंने बस 'अस्वीकार करें' बटन को मेरे दस्तावेज़ में एक अधूरा कॉलम डाला था।


मुझे आपकी तरह की समस्या मिली है इसलिए मैं मदद करने के लिए छोटे टूल लिखने का फैसला करता हूं। कृपया ExcelDiff_Tools । यह कई महत्वपूर्ण बिंदुओं के साथ आता है:

  • समर्थन xls, xlsx, xlsm।
  • सूत्र सेल के साथ। यह सूत्र और मूल्य दोनों की तुलना करेगा।
  • मैं यूआई को मानक diff टेक्स्ट व्यूअर की तरह दिखने की कोशिश करता हूं: संशोधित, हटाए गए, जोड़े गए, अपरिवर्तित स्थिति। उदाहरण के लिए कृपया नीचे दी गई छवि के साथ एक नज़र डालें:

मुझे पता है कि कई प्रतिक्रियाओं ने फ़ाइल को सीएसवी या किसी अन्य पाठ प्रारूप में निर्यात करने का सुझाव दिया है, और फिर उनकी तुलना कर रहा है। मैंने इसे विशेष रूप से उल्लेख नहीं किया है, लेकिन तुलना 3 से परे कई अतिरिक्त फ़ाइल स्वरूप हैं जो इसका समर्थन करते हैं। अतिरिक्त फ़ाइल प्रारूप देखें। माइक्रोसॉफ्ट एक्सेल फ़ाइल प्रारूपों में से किसी एक का उपयोग करके आप दो एक्सेल फ़ाइलों की तुलना किसी अन्य प्रारूप विकल्प में निर्यात के बिना आसानी से कर सकते हैं।


मैंने अतीत में एक्सेल कार्यपुस्तिकाओं की तुलना की है। मेरी तकनीक कई वर्कशीट्स के साथ कार्यपुस्तिकाओं के लिए बहुत अच्छी तरह से काम करती है, लेकिन यह केवल सेल सामग्री की तुलना करता है, न कि सेल स्वरूपण, मैक्रोज़ इत्यादि। इसके अलावा, इसमें कुछ कोडिंग शामिल है लेकिन यदि आपको कई बड़ी फ़ाइलों की बार-बार तुलना करना है तो यह इसके लायक है। यहां देखिए यह कैसे काम करता है:

ए) एक साधारण डंप प्रोग्राम लिखें जो सभी वर्कशीट्स के माध्यम से कदम उठाता है और सभी डेटा को टैब से अलग फ़ाइलों में सहेजता है। वर्कशीट प्रति एक फ़ाइल बनाएं (वर्कशीट नाम का उपयोग फ़ाइल नाम के रूप में करें, उदाहरण के लिए "MyWorksheet.tsv"), और प्रत्येक बार जब आप प्रोग्राम चलाते हैं तो इन फ़ाइलों के लिए एक नया फ़ोल्डर बनाएं। एक्सेल फ़ाइल नाम के बाद फ़ोल्डर को नाम दें और एक टाइमस्टैम्प जोड़ें, उदाहरण के लिए "20080 9 22-065412-MyExcelFile"। मैंने जावा में JExcelAPI नामक लाइब्रेरी का उपयोग करके JExcelAPI । यह वास्तव में काफी आसान है।

बी) एक्सेल फ़ाइल पर राइट-क्लिक करते समय चरण ए से अपना नया जावा प्रोग्राम चलाने के लिए एक विंडोज शैल एक्सटेंशन जोड़ें। यह इस कार्यक्रम को चलाने में बहुत आसान बनाता है। आपको Google को यह करने की आवश्यकता है, लेकिन यह * .reg फ़ाइल लिखना जितना आसान है।

सी) BeyondCompare प्राप्त करें। यह एक अच्छी तालिका में दिखाकर सीमित डेटा की तुलना करने के लिए एक बहुत ही अच्छी सुविधा है, स्क्रीनशॉट देखें

डी) अब आप आसानी से एक्सेल फ़ाइलों की तुलना करने के लिए तैयार हैं। एक्सेल फ़ाइल 1 पर राइट-क्लिक करें और अपना डंप प्रोग्राम चलाएं। यह एक वर्कशीट प्रति फ़ाइल के साथ एक फ़ोल्डर बना देगा। एक्सेल फ़ाइल 2 पर राइट-क्लिक करें और अपना डंप प्रोग्राम चलाएं। यह एक वर्कशीट प्रति फ़ाइल के साथ एक दूसरा फ़ोल्डर बना देगा। फ़ोल्डर की तुलना करने के लिए अब BeyondCompare (BC) का उपयोग करें। प्रत्येक फ़ाइल वर्कशीट का प्रतिनिधित्व करती है, इसलिए यदि वर्कशीट में कोई अंतर है तो बीसी इसे दिखाएगा और आप ड्रिल कर सकते हैं और फ़ाइल तुलना कर सकते हैं। बीसी एक अच्छी टेबल लेआउट में तुलना दिखाएगा, और आप उन पंक्तियों और कॉलम को छुपा सकते हैं जिनमें आप रुचि नहीं रखते हैं।


यदि आप जावा का उपयोग कर रहे हैं, तो आप simple-excel प्रयास कर सकते simple-excel

यह हैमक्रिस्ट मैचर्स का उपयोग करके स्प्रेडशीट को अलग करेगा और इस तरह कुछ आउटपुट करेगा।

java.lang.AssertionError:
Expected: entire workbook to be equal
     but: cell at "C14" contained <"bananas"> expected <nothing>,
          cell at "C15" contained <"1,850,000 EUR"> expected <"1,850,000.00 EUR">,
          cell at "D16" contained <nothing> expected <"Tue Sep 04 06:30:00">
    at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)

मुझे अर्हता प्राप्त करनी चाहिए कि हमने उस उपकरण को लिखा है (जैसे कि चुने गए जवाब ने खुद को लुढ़काया)।


यदि आपके पास TortoiseSVN है तो आप Windows Explorer में उन्हें चुनने के लिए CTRL को दो फ़ाइलों पर क्लिक कर सकते हैं और फिर राइट-क्लिक करें, TortoiseSVN-> डिफ।

यदि आप बड़े डेटा सेट में एक छोटे से बदलाव की तलाश में हैं तो यह विशेष रूप से अच्छा काम करता है।


हमने अपने सह में एक ही मुद्दे का सामना किया। हमारे परीक्षण आउटपुट कार्यपुस्तिका एक्सेल। बाइनरी diff एक विकल्प नहीं था। तो हमने अपना खुद का सरल कमांड लाइन टूल लॉन्च किया। ExcelCompare प्रोजेक्ट देखें । असल में यह हमें अपने परीक्षणों को काफी अच्छी तरह से स्वचालित करने की अनुमति देता है। पैच / फ़ीचर अनुरोधों का स्वागत है!


हममम। एक्सेल मेनू से विंडो चुनें -> तरफ से तुलना करें?


डिफ डॉक आप जो खोज रहे हैं वह हो सकता है।

  • एमएस वर्ड (डीओसी, डॉक्स इत्यादि), एक्सेल, पीडीएफ, रिच टेक्स्ट (आरटीएफ), टेक्स्ट, एचटीएमएल, एक्सएमएल, पावरपॉइंट, या वर्डपेरफेक्ट के दस्तावेज़ों की तुलना करें और प्रारूपण बनाए रखें
  • किसी भी दस्तावेज़ (फ़ाइल) का कोई भी भाग चुनें और इसे उसी या अलग दस्तावेज़ (फ़ाइल) के किसी भी हिस्से के विरुद्ध तुलना करें।




xls