مقارنة الملفات

أداة المقارنة Kompare من KDE

في مجال الحوسبة ، تعد مقارنة الملفات عملية حساب وعرض الاختلافات والتشابهات بين كائنات البيانات، وعادة ما تكون ملفات نصية مثل شفرة المصدر .

تُسمى الطرق والتطبيقات والنتائج عادةً بـ diff ، [ 1 ] نسبةً إلى أداة يونكس . ويمكن عرض المخرجات في واجهة مستخدم رسومية أو استخدامها كجزء من مهام أكبر في الشبكات أو أنظمة الملفات أو التحكم في الإصدارات .diff

من بين برامج مقارنة الملفات الشائعة الاستخدام: diff و cmp و FileMerge و WinMerge و Beyond Compare و File Compare .

تقوم العديد من برامج تحرير النصوص ومعالجات الكلمات بإجراء مقارنة الملفات لتسليط الضوء على التغييرات التي طرأت على ملف أو مستند.

أنواع الطرق

تجد معظم أدوات مقارنة الملفات أطول تسلسل فرعي مشترك بين ملفين. أي بيانات لا تقع ضمن أطول تسلسل فرعي مشترك تُعرض كتغيير أو إضافة أو حذف.

في عام 1978، نشر بول هيكل خوارزمية تحدد أكثر كتل النصوص التي تم نقلها. [ 2 ] تُستخدم هذه الخوارزمية في أداة IBM History Flow . [ 3 ] كما تقوم برامج مقارنة الملفات الأخرى باكتشاف عمليات نقل الكتل.

تجد بعض أدوات مقارنة الملفات المتخصصة أطول تسلسل فرعي متزايد بين ملفين. [ 4 ] يستخدم بروتوكول rsync دالة تجزئة متداولة لمقارنة ملفين على جهازين كمبيوتر متباعدين مع تقليل تكلفة الاتصال.

تتم مقارنة الملفات في برامج معالجة النصوص عادةً على مستوى الكلمات، بينما تتم المقارنة في معظم أدوات البرمجة على مستوى الأسطر. وتُعدّ مقارنة الملفات على مستوى البايت أو الأحرف مفيدة في بعض التطبيقات المتخصصة.

عرض

تختلف طرق عرض مقارنة الملفات، وتتمثل الطرق الرئيسية إما في عرض ملفين جنبًا إلى جنب، أو عرض ملف واحد مع توضيح التغييرات بين الملفين باستخدام علامات التنسيق. في كلتا الحالتين، وخاصةً عند عرض الملفين جنبًا إلى جنب، يمكن استخدام طي التعليمات البرمجية أو طي النص لإخفاء الأجزاء غير المتغيرة من الملف، وعرض الأجزاء المتغيرة فقط.

التفكير المنطقي

تُستخدم أدوات المقارنة لأسبابٍ مُتعددة. عند الرغبة في مُقارنة الملفات الثنائية، يُفضّل على الأرجح استخدام مُقارنة على مستوى البايت. أما عند الرغبة في مُقارنة الملفات النصية أو برامج الحاسوب ، فإن المُقارنة المرئية جنبًا إلى جنب هي الأفضل عادةً. [ 5 ] يُتيح هذا للمستخدم فرصة تحديد الملف المُفضّل للاحتفاظ به، أو دمج الملفات لإنشاء ملف واحد يحتوي على جميع الاختلافات، [ 6 ] أو ربما الاحتفاظ بهما كما هما للرجوع إليهما لاحقًا، من خلال نوعٍ من أنواع التحكم في الإصدارات.

تُعدّ مقارنة الملفات جزءًا هامًا، وربما أساسيًا، من مزامنة الملفات ونسخها احتياطيًا . في منهجيات النسخ الاحتياطي، تُشكّل مشكلة تلف البيانات تحديًا كبيرًا. يحدث التلف فجأةً ودون سابق إنذار، أو على الأقل حتى فوات الأوان لاستعادة الأجزاء المفقودة. عادةً، الطريقة الوحيدة للتأكد من تلف الملف هي عند استخدامه أو فتحه لاحقًا. في حال تعذّر ذلك، يجب استخدام أداة مقارنة لتحديد وجود أي اختلاف على الأقل. لذلك، يجب أن تتضمن جميع برامج مزامنة الملفات أو النسخ الاحتياطي ميزة مقارنة الملفات لكي تكون هذه البرامج فعّالة وجديرة بالثقة. [ 7 ]

الاستخدامات التاريخية

قبل ظهور تقنية مقارنة الملفات، كانت هناك آلات لمقارنة الأشرطة المغناطيسية أو البطاقات المثقبة. وكان جهاز IBM 519 Card Reproducer قادرًا على تحديد ما إذا كانت مجموعة من البطاقات المثقبة متطابقة. وفي عام 1957، طوّر جون فان غاردنر نظامًا لمقارنة مجاميع التحقق لأجزاء مُحمّلة من برامج فورتران لتصحيح أخطاء الترجمة على جهاز IBM 704. [ 8 ]

انظر أيضاً

مراجع

  1. "diff"، ملف المصطلحات .
  2. هيكل، بول (1978)، "تقنية لعزل الاختلافات بين الملفات" (ملف PDF) ، مجلة اتصالات رابطة مكائن ​​الحوسبة ، 21 (4): 264-268 ، doi : 10.1145/359460.359467 ، S2CID 207683976 ، تاريخ الاسترجاع : 4 ديسمبر 2011 
  3. فييغاس، فرناندو ب.؛ واتنبرغ، مارتن؛ كوشال، كوشال ديف (2004)، دراسة التعاون والصراع بين المؤلفين باستخدام تصورات تدفق التاريخ (ملف PDF) ، المجلد 6، فيينا: CHI، الصفحات 575-582 ، تاريخ الاسترجاع 2011-12-01  
  4. ليوي رين؛ جينشنغ غو؛ لوشنغ بنغ (18 أبريل 2006). "خوارزميات لمحاذاة التعليمات البرمجية على مستوى الكتل في ملفات البرامج الثنائية" . براءات اختراع جوجل . مكتب براءات الاختراع والعلامات التجارية الأمريكي . تم الاطلاع عليه في 10 مايو 2019 .
  5. ماكنزي، ديفيد؛ إيغرت، بول؛ ستالمان، ريتشارد (2003). مقارنة ودمج الملفات باستخدام GNU Diff وPatch . نظرية الشبكات. ISBN 978-0-9541617-5-0.
  6. "برامج مقارنة الملفات: vc-dwim و vc-chlog" . www.gnu.org . تاريخ الاسترجاع: 16 أبريل 2023 .
  7. "SystemRescue - الصفحة الرئيسية لـ System Rescue" . www.system-rescue.org . تم الاطلاع عليه بتاريخ 16 أبريل 2023 .
  8. جون فان غاردنر. "فورتران ونشأة مشروع إنترسبت" (ملف PDF) . تم الاطلاع عليه بتاريخ 2011-12-06 .