File comparison
कम्प्यूटिंग में, फ़ाइल तुलना डेटा वस्तुओं, आमतौर पर स्रोत कोड जैसी पाठ फ़ाइलों के बीच अंतर और समानताओं की गणना और प्रदर्शन है। विधियों, कार्यान्वयन और परिणामों को आमतौर पर यूनिक्स डिफ उपयोगिता के बाद डिफ कहा जाता है। आउटपुट को ग्राफिकल यूजर इंटरफेस में प्रस्तुत किया जा सकता है या नेटवर्क, फाइल सिस्टम या संशोधन नियंत्रण में बड़े कार्यों के हिस्से के रूप में उपयोग किया जा सकता है। कुछ व्यापक रूप से उपयोग किए जाने वाले फ़ाइल तुलना कार्यक्रम डिफ़, सी. एम. पी., फाइलमर्ज, विनमर्ज, बियॉन्ड कम्पेयर और फाइल कम्पेयर हैं। कई पाठ संपादक और वर्ड प्रोसेसर किसी फ़ाइल या दस्तावेज़ में परिवर्तनों को उजागर करने के लिए फ़ाइल की तुलना करते हैं। विधि प्रकार अधिकांश फ़ाइल तुलना उपकरण दो फ़ाइलों के बीच सबसे लंबे समय तक सामान्य अनुक्रम पाते हैं। कोई भी डेटा जो सबसे लंबे समय तक सामान्य अनुक्रम में नहीं है, उसे परिवर्तन या सम्मिलन या विलोपन के रूप में प्रस्तुत किया जाता है। 1978 में, पॉल हेकल ने एक एल्गोरिथ्म प्रकाशित किया जो पाठ के अधिकांश स्थानांतरित खंडों की पहचान करता है। इसका उपयोग आईबीएम हिस्ट्री फ्लो टूल में किया जाता है। अन्य फ़ाइल तुलना कार्यक्रम ब्लॉक चाल पाते हैं। कुछ विशेष फ़ाइल तुलना उपकरण दो फ़ाइलों के बीच सबसे लंबे समय तक बढ़ते अनुक्रम को पाते हैं। rsync प्रोटोकॉल कम संचार वाले दो दूर के कंप्यूटरों पर दो फ़ाइलों की तुलना करने के लिए एक रोलिंग हैश फ़ंक्शन का उपयोग करता है। वर्ड प्रोसेसर में फ़ाइल की तुलना आमतौर पर शब्द स्तर पर होती है, जबकि अधिकांश प्रोग्रामिंग उपकरणों में तुलना लाइन स्तर पर होती है। बाइट्स या चरित्र-स्तर की तुलना कुछ विशेष अनुप्रयोगों में उपयोगी है। फ़ाइल तुलना का प्रदर्शन प्रदर्शन अलग-अलग होता है, जिसमें मुख्य दृष्टिकोण या तो दो फ़ाइलों को साथ-साथ दिखाना होता है, या एक एकल फ़ाइल दिखाना होता है, जिसमें मार्कअप एक फ़ाइल से दूसरी फ़ाइल में परिवर्तन दिखाता है। दोनों ही मामलों में, विशेष रूप से साथ-साथ देखने, कोड फोल्डिंग या टेक्स्ट फोल्डिंग का उपयोग फ़ाइल के अपरिवर्तित भागों को छिपाने के लिए किया जा सकता है, केवल बदले हुए भागों को दिखाया जा सकता है। तर्क तुलना उपकरण का उपयोग विभिन्न कारणों से किया जाता है। जब कोई द्विआधारी फाइलों की तुलना करना चाहता है, तो संभवतः बाइट-स्तर सबसे अच्छा है। लेकिन अगर कोई पाठ फ़ाइलों या कंप्यूटर प्रोग्रामों की तुलना करना चाहता है, तो एक साथ-साथ दृश्य तुलना आमतौर पर सबसे अच्छी होती है। यह उपयोगकर्ता को यह तय करने का मौका देता है कि कौन सी फ़ाइल पसंदीदा है जिसे बनाए रखना है, क्या फ़ाइलों को सभी अंतरों वाली एक बनाने के लिए विलय किया जाना चाहिए, या शायद दोनों को बाद के संदर्भ के लिए "संस्करण" नियंत्रण के किसी रूप के माध्यम से रखा जाना चाहिए। फ़ाइल की तुलना एक महत्वपूर्ण, और सबसे अधिक संभावना अभिन्न, फ़ाइल सिंक्रनाइज़ेशन और बैकअप का हिस्सा है। बैकअप पद्धतियों में, डेटा भ्रष्टाचार का मुद्दा एक महत्वपूर्ण मुद्दा है। भ्रष्टाचार बिना किसी चेतावनी के और किसी की जानकारी के बिना होता है; कम से कम आमतौर पर लापता भागों को पुनर्प्राप्त करने में बहुत देर हो जाती है। आमतौर पर, यह सुनिश्चित करने का एकमात्र तरीका है कि कोई फ़ाइल दूषित हो गई है या नहीं, यह जानने का एकमात्र तरीका है कि इसका अगला उपयोग कब किया जाता है या कब खोला जाता है। इसे छोड़कर, कम से कम यह पहचानने के लिए कि एक अंतर आया है, एक तुलना उपकरण का उपयोग करना चाहिए। इसलिए, यदि इन कार्यक्रमों को वास्तव में उपयोगी और विश्वसनीय होना है तो सभी फ़ाइल सिंक या बैकअप कार्यक्रमों में फ़ाइल तुलना शामिल होनी चाहिए। फाइल तुलना से पहले, चुंबकीय टेप या पंच कार्ड की तुलना करने के लिए मशीनें मौजूद थीं। आईबीएम 519 कार्ड रिप्रोड्यूसर यह निर्धारित कर सकता था कि पंच्ड कार्ड का एक डेक समकक्ष था या नहीं। 1957 में, जॉन वैन गार्डनर ने आईबीएम 704 पर संकलन समस्याओं को डीबग करने के लिए फोरट्रान कार्यक्रमों के लोड किए गए वर्गों की चेक राशि की तुलना करने के लिए एक प्रणाली विकसित की। ये भी देखें संदर्भ बाहरी लिंक डेटा भिन्न उपयोगिता सॉफ्टवेयर प्रकार