मुफ़्त 3-तरफ़ा डिफ़ व्यूअर

टेक्स्ट के दो या तीन संस्करणों की साथ-साथ तुलना करें। रंगीन हाइलाइटिंग के साथ जोड़, विलोपन और टकराव देखें।

अपडेट किया गया

Share:
Home/Utility Tools/Three-Way Diff Viewer

Three-Way Diff Viewer

Compare two or three versions of text side-by-side. Color-coded diff with line numbers, unified format output, and stats.

Paste text into the panels above to see the diff.

Diff computed using Longest Common Subsequence (LCS) algorithm. All processing is done in your browser — no data is sent to any server.

अक्सर पूछे जाने वाले प्रश्न

थ्री-वे डिफ़ क्या है?

थ्री-वे डिफ़ एक बेस संस्करण की तुलना दो संशोधित संस्करणों से करता है, जिससे git मर्ज जैसी स्थितियों में टकराव पहचानने में मदद मिलती है।

क्या यह लाइन नंबर दिखाता है?

हाँ, आसान संदर्भ के लिए सभी पैनलों में लाइन नंबर दिखाए जाते हैं।

क्या यह मुफ़्त है?

हाँ, पूरी तरह मुफ़्त।

क्या इस टूल के साथ मेरा डेटा सुरक्षित है?

बिल्कुल। थ्री-वे डिफ़ व्यूअर सब कुछ आपके ब्राउज़र में क्लाइंट-साइड पर प्रोसेस करता है। कोई भी डेटा किसी सर्वर पर अपलोड या संग्रहीत नहीं किया जाता। आपकी सामग्री हर समय आपके डिवाइस पर निजी रहती है।

क्या थ्री-वे डिफ़ व्यूअर मोबाइल डिवाइस पर काम करता है?

हाँ, थ्री-वे डिफ़ व्यूअर पूरी तरह रिस्पॉन्सिव है और स्मार्टफ़ोन व टैबलेट पर काम करता है। आप इसे किसी भी आधुनिक वेब ब्राउज़र वाले डिवाइस पर इस्तेमाल कर सकते हैं, किसी ऐप डाउनलोड की ज़रूरत नहीं।

क्या इस टूल का उपयोग करने के लिए मुझे खाता बनाना होगा?

किसी खाते या पंजीकरण की ज़रूरत नहीं है। बस अपने ब्राउज़र में थ्री-वे डिफ़ व्यूअर खोलें और तुरंत उपयोग शुरू करें। कोई साइन-अप बाधा या उपयोग प्रतिबंध नहीं है।

मैं थ्री-वे डिफ़ व्यूअर का उपयोग कैसे करूँ?

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

कौन-से ब्राउज़र समर्थित हैं?

थ्री-वे डिफ़ व्यूअर सभी आधुनिक ब्राउज़रों में काम करता है, जिनमें Chrome, Firefox, Safari, Edge और Opera शामिल हैं। सर्वोत्तम अनुभव के लिए अपने पसंदीदा ब्राउज़र का नवीनतम संस्करण उपयोग करें।

2-way और 3-way डिफ में क्या अंतर है?

2-way डिफ एक Original की तुलना एक Modified वर्ज़न से करता है और सिर्फ़ एक सवाल का जवाब देता है: इन दो स्नैपशॉट के बीच क्या बदला? यह रोज़मर्रा वाला "पहले और बाद" व्यू है। 3-way डिफ में एक साझा पूर्वज (ancestor) जोड़ा जाता है, जिसे Base कहा जाता है, और इसकी तुलना दो स्वतंत्र एडिट, Version A और Version B से की जाती है। चूँकि दोनों वर्ज़न एक ही शुरुआती बिंदु से नापे जाते हैं, इसलिए 3-way डिफ यह बता सकता है कि किस पक्ष ने किन लाइनों को छुआ और क्या दोनों एडिट एक ही हिस्से में टकराए — ठीक वही लॉजिक जो Git मर्ज कॉन्फ्लिक्ट पहचानने के लिए इस्तेमाल करता है। यह टूल एक ही टॉगल से दोनों विकल्प देता है। सीधे-सादे रिविज़न को रिव्यू करने के लिए 2-way मोड का इस्तेमाल करें, और 3-way मोड तब जब दो लोगों ने एक ही फ़ाइल को अलग-अलग बदला हो और आपको यह देखना हो कि किसने क्या किया। ऊपर मोड बदलें और अपने वर्ज़न पेस्ट करके तुरंत तुलना करें।

यह डिफ टूल यह कैसे तय करता है कि कौन-सी लाइनें बदली हैं?

व्यूअर Longest Common Subsequence (LCS) एल्गोरिद्म से अंतर की गणना करता है, यही लाइन-मिलान वाला तरीका क्लासिक Unix diff और Git के पीछे भी काम करता है। LCS दोनों इनपुट में मौजूद लाइनों का सबसे लंबा क्रम खोजता है जो एक ही क्रम में साझा है, फिर उस क्रम के बाहर की हर चीज़ को इंसर्ट या डिलीट माना जाता है। इसका फ़ायदा है अलाइनमेंट: एक लाइन खिसकने पर पूरी फ़ाइल को दोबारा लिखा हुआ बताने के बजाय, यह बिना बदलाव वाली लाइनों को मिलाकर रखता है और सिर्फ़ असली एडिट को फ्लैग करता है — जोड़ी गई के लिए हरा और हटाई गई के लिए लाल। तुलना लाइन-आधारित है, इसलिए हर इनपुट को लाइन ब्रेक पर विभाजित किया जाता है और हर लाइन को कैरेक्टर-बाय-कैरेक्टर के बजाय एक पूरी इकाई के रूप में मिलाया जाता है। यही वजह है कि यह सोर्स कोड, Markdown, CSV रो, लॉग, और कॉन्फ़िग फ़ाइलों के लिए अच्छी तरह उपयुक्त है। अपने दो वर्ज़न पेस्ट करें और टाइप करना बंद करते ही हाइलाइट किया हुआ नतीजा दिखने लगता है।

Unified diff फ़ॉर्मैट क्या है और मैं इसे कॉपी क्यों करूँ?

Unified diff वह मानक पैच फ़ॉर्मैट है जिसे Git, कोड रिव्यू टूल, और Unix के patch कमांड इस्तेमाल करते हैं। यह पुरानी और नई फ़ाइल को दर्शाने वाली दो हेडर लाइनों (--- और +++) से शुरू होता है, फिर बदलावों को @@ मार्कर से शुरू होने वाले hunks में समूहित करता है जो लाइन पोज़िशन दिखाता है। हर hunk के अंदर, प्लस चिह्न वाली लाइनें जोड़ी गई थीं, माइनस चिह्न वाली लाइनें हटाई गई थीं, और बिना बदलाव वाली संदर्भ लाइनों के आगे एक स्पेस होता है। इसे कॉपी करने की वजह है पोर्टेबिलिटी: unified diff सादा टेक्स्ट है जिसे कोई भी डेवलपर या टूल पढ़ और लागू कर सकता है, इसलिए आप इसे बिना स्क्रीनशॉट के सीधे पुल रिक्वेस्ट कमेंट, बग रिपोर्ट, या .patch फ़ाइल में डाल सकते हैं। यह टूल आपके पैनल से अपने आप unified आउटपुट बना देता है, और एक-क्लिक वाला Copy बटन इसे आपके क्लिपबोर्ड पर रख देता है। अपने वर्ज़न पेस्ट करें, फिर जब बदलाव शेयर करने के लिए तैयार हों तो unified diff कॉपी कर लें।

क्या मैं इस टूल का इस्तेमाल Git मर्ज कॉन्फ्लिक्ट सुलझाने के लिए कर सकता हूँ?

हाँ — 3-way मोड ठीक उसी तरह बना है जैसे मर्ज कॉन्फ्लिक्ट संरचित होता है। कॉन्फ्लिक्ट तब होता है जब दो ब्रांच एक ही फ़ाइल को स्वतंत्र रूप से एडिट करते हैं, और Git दोनों की तुलना उनके साझा पूर्वज (ancestor) से करके तय करता है कि कौन-से बदलाव मिल सकते हैं और कौन-से टकराते हैं। 3-way डिफ पर स्विच करें, साझा पूर्वज को Base में, अपनी ब्रांच को Version A में, और आने वाली ब्रांच को Version B में पेस्ट करें। व्यूअर तीनों कॉलम को Base से A और Base से B के लिए अलग-अलग चेंज काउंट के साथ दिखाता है, ताकि आप एक नज़र में देख सकें कि किस पक्ष ने किन लाइनों को छुआ और कहाँ वे ओवरलैप करते हैं। इसके बाद आप अपने एडिटर में कॉन्फ्लिक्ट सुलझाते समय लाइन-दर-लाइन तय कर सकते हैं कि कौन-सा एडिट रखना है। ध्यान दें कि यह केवल पढ़ने-योग्य (read-only) तुलना सहायक है: यह आपको कॉन्फ्लिक्ट समझने में मदद करता है लेकिन कमिट, स्टेज, या फ़ाइलें नहीं लिखता। ठीक करने से पहले मर्ज का नक्शा बनाने के लिए ऊपर अपने तीन वर्ज़न पेस्ट करें।

क्या मैं कितना भी टेक्स्ट कंपेयर कर सकता हूँ, या कोई सीमा है?

इसमें कोई तय कैरेक्टर या फ़ाइल-साइज़ सीमा नहीं है, और न ही कोई पेवॉल है जो बड़े इनपुट के लिए अनलॉक करना पड़े — आप पैनल में छोटे स्निपेट या लंबी फ़ाइलें दोनों पेस्ट कर सकते हैं। चूँकि डिफ पूरी तरह आपके ब्राउज़र में LCS एल्गोरिद्म से चलता है, इसलिए प्रदर्शन किसी सर्वर क्यू के बजाय आपके अपने डिवाइस पर निर्भर करता है, और सोर्स फ़ाइलों, कॉन्फ़िग स्निपेट, लॉग, या डॉक्यूमेंट ड्राफ्ट जैसे ज़्यादातर सामान्य इनपुट लगभग तुरंत कंपेयर हो जाते हैं। एक व्यावहारिक बात यह है कि LCS का काम दोनों इनपुट के आकार के साथ बढ़ता है, इसलिए हज़ारों लाइनों वाली दो बहुत बड़ी फ़ाइलों की तुलना करने में एक छोटे स्निपेट से थोड़ा ज़्यादा समय लग सकता है। सामान्य कोड रिव्यू और रिविज़न जाँच में आपको कोई देरी महसूस नहीं होगी। आप जो भी पेस्ट करते हैं वह अपलोड नहीं होता, इसलिए गोपनीय पैच या कॉन्ट्रैक्ट भी आपके डिवाइस पर ही रहते हैं। ऊपर पैनल में अपना टेक्स्ट पेस्ट करें और टाइप करना खत्म करते ही हाइलाइट किया हुआ डिफ दिखाई देने लगता है।

संबंधित टूल

मुफ़्त सुरक्षित पासवर्ड जनरेटर

अनुकूलन योग्य विकल्पों के साथ सुरक्षित, यादृच्छिक पासवर्ड बनाएं। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।

मुफ़्त UUID/GUID जनरेटर

सार्वभौमिक रूप से अद्वितीय पहचानकर्ता (UUID/GUID) बनाएं। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।

मुफ़्त QR कोड जनरेटर ऑनलाइन

URL, टेक्स्ट, WiFi क्रेडेंशियल और बहुत कुछ के लिए QR कोड बनाएं। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।

मुफ़्त JSON फ़ॉर्मेटर और वैलिडेटर

सिंटैक्स हाइलाइटिंग और त्रुटि पहचान के साथ JSON डेटा को फ़ॉर्मेट, सत्यापित और सुंदर बनाएं। मुफ़्त, तेज़ और पूरी तरह आपके ब्राउज़र में काम करता है, बिना साइन-अप के।

3-वे डिफ व्यूअर के बारे में

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

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

टू-वे बनाम थ्री-वे तुलना

टूल में दो मोड हैं, जिन्हें एक ही टॉगल से चुना जाता है।

  • 2-Way Diff एक Original की तुलना एक Modified वर्ज़न से करता है — यह रोज़मर्रा का "क्या बदला?" वाला व्यू है। एक सुविधाजनक Swap A↔B बटन दोनों पक्षों को पलट देता है ताकि आप बदलाव को किसी भी दिशा में पढ़ सकें।
  • 3-Way Diff एक साझा Base की तुलना दो स्वतंत्र एडिट, Version A और Version B से करता है। यही वह मॉडल है जो Git मर्ज के पीछे काम करता है: थ्री-वे डिफ साझा पूर्वज (ancestor) और दोनों ब्रांच को लेता है, ताकि आप बता सकें कि किस पक्ष ने किन लाइनों को छुआ और कहाँ दो लोगों ने एक ही हिस्से को एडिट किया। व्यूअर Base, Version A, और Version B को तीन कॉलम में दिखाता है, साथ ही Base → A और Base → B के लिए अलग-अलग चेंज काउंट के साथ।

तुलना कैसे बनाई जाती है

अंतर की गणना Longest Common Subsequence (LCS) एल्गोरिद्म से की जाती है, यही लाइन-मिलान वाला तरीका क्लासिक Unix diff और Git भी इस्तेमाल करते हैं। LCS दोनों इनपुट में मौजूद लाइनों का सबसे लंबा क्रम खोजता है जो एक ही क्रम में साझा है, फिर उस क्रम के बाहर की हर चीज़ को इंसर्ट या डिलीट माना जाता है — इससे असंबंधित लाइनें आपस में मिली रहती हैं, न कि पूरी फ़ाइल को दोबारा लिखा हुआ बता दिया जाता है जबकि असल में सिर्फ़ एक लाइन खिसकी हो।

तुलना लाइन-आधारित है: हर इनपुट को लाइन ब्रेक पर विभाजित किया जाता है, और हर लाइन को एक पूरी इकाई के रूप में मिलाया जाता है। यही वजह है कि यह व्यूअर सोर्स कोड, Markdown, CSV रो, लॉग, और स्ट्रक्चर्ड कॉन्फ़िग के लिए आदर्श है, जहाँ बदलाव आमतौर पर किसी लाइन के जुड़ने, हटने, या फिर से लिखे जाने का मतलब रखता है।

आप नतीजों से क्या पढ़ सकते हैं

रंग-कोडेड पैनल के अलावा, व्यूअर कुछ ऐसी चीज़ें दिखाता है जो रिव्यू को तेज़ बनाती हैं:

  • एक लाइव स्टैट्स बार जो जोड़ी गई, हटाई गई, और बिना बदलाव वाली लाइनों को गिनता है, ताकि आप एक नज़र में बदलाव का अंदाज़ा लगा सकें। 3-way मोड में यह कुल संख्या को Base → A और Base → B में बाँट देता है।
  • हर पैनल में लाइन नंबर (चालू/बंद किए जा सकने वाले) ताकि आप किसी साथी को "लाइन 42" की ओर इशारा कर सकें।
  • Unified diff आउटपुट — वही मानक --- / +++ / @@ पैच फ़ॉर्मैट, + और - लाइन प्रीफ़िक्स के साथ, जिसे Git, कोड रिव्यू, और पैच टूल समझते हैं। एक-क्लिक वाला Copy बटन इसे आपके क्लिपबोर्ड पर रख देता है, जो पुल रिक्वेस्ट कमेंट, बग रिपोर्ट, या .patch फ़ाइल में पेस्ट करने के लिए तैयार होता है।

एक Load Example बटन जो भी मोड चालू है उसके लिए सैंपल टेक्स्ट डाल देता है, ताकि अपना टेक्स्ट पेस्ट करने से पहले आप देख सकें कि आउटपुट कैसा दिखता है।

डिफ क्यों मायने रखता है

नज़र से बदलाव खोजना धीमा और गलती-प्रवण है; किसी लंबे कॉन्फ़िग या कॉन्ट्रैक्ट में हुआ एक छोटा-सा एडिट आसानी से छूट सकता है। एक डिफ "इन दो टेक्स्ट की दीवारों की तुलना करो" को "यहाँ वे चार लाइनें हैं जो अलग हैं" में बदल देता है। थ्री-वे तुलना इससे भी आगे जाकर उस सवाल का जवाब देती है जो मर्ज को बिगाड़ देता है: जब दो लोग एक ही फ़ाइल को अलग-अलग बदलते हैं, तो किसने क्या बदला, और क्या वे टकराए? यही मर्ज कॉन्फ्लिक्ट सुलझाने का मूल है — और आप यह सब यहाँ बिना कुछ कमिट किए या इंस्टॉल किए कर सकते हैं।

अपने वर्ज़न ऊपर पैनल में पेस्ट करें ताकि अंतर तुरंत हाइलाइट होकर दिखें, फिर जब शेयर करने के लिए तैयार हों तो unified diff कॉपी कर लें।