لمقارنة ملفين نصيين على جهاز Mac قبل دمج التعديلات، قم أولاً بإنشاء نسخ منفصلة لكلا الإصدارين، ثم افحص الفروق بينهما باستخدام أمر diff في Terminal أو أداة مقارنة مرئية مثل Visual Studio Code أو BBEdit. تتيح لك المقارنة رؤية ما تم تغييره؛ ومع ذلك سيتعين عليك تحديد التعديلات التي تريد الاحتفاظ بها وحفظ النتيجة المدمجة كملف جديد حتى تنتهي من مراجعتها.

تحضير الإصدارين

ضع كلا الملفين في مكان يسهل الوصول إليه، مثل سطح المكتب (Desktop) أو مجلد مؤقت. تأكد من تحديد أيهما الإصدار الأقدم أو الأساسي وأيهما يحتوي على التعديلات الأحدث. إذا تم تعديل كلا الملفين بشكل مستقل، فضع في اعتبارك أنه ليس بالضرورة أن يمثل أي منهما الإصدار النهائي الصحيح.

قبل البدء بالدمج، انسخ الملفات الأصلية مكررة في Finder أو استخدم File > Duplicate في تطبيق يدعم ذلك. امنح النسخ أسماء واضحة، مثل draft-original.txt وdraft-edited.txt، ولاحقاً draft-merged.txt. يمنحك هذا خياراً للرجوع إلى نقطة البداية إذا قمت بالكتابة فوق المحتوى عن طريق الخطأ. تأكد من أن كلا الملفين بتنسيق نص عادي (plain text) وأنك تقارن بين الملفين الصحيحين؛ إذ قد تحتوي المستندات المنسقة على بنية لا تمثلها المقارنة النصية العادية.

مقارنة الملفات في Terminal باستخدام diff

لإجراء مقارنة سريعة باستخدام سطر الأوامر في macOS، افتح تطبيق Terminal واكتب diff -u ، مع ترك مسافة بعد الأمر. اسحب الملف الأول من Finder إلى نافذة Terminal، ثم اكتب مسافة، واسحب الملف الثاني إليها، ثم اضغط على زر Return. يقارن الأمر بين محتويات الملفين ويطبع الفروق بصيغة موحدة (unified difference) تتضمن السياق المحيط. المسار الأول هو الإصدار الأساسي، بينما المسار الثاني هو الإصدار الذي تتم مقارنته به. توثق صفحة دليل diff الخاصة بـ Apple تفاصيل الأمر وخيار الإخراج الموحد الخاص به.

diff -u /path/to/first.txt /path/to/second.txt

في النتائج المعروضة، تظهر الأسطر التي تبدأ بـ - في الملف الأول ولكن ليس في الملف الثاني؛ بينما تظهر الأسطر التي تبدأ بـ + في الملف الثاني ولكن ليس في الأول. أما الأسطر التي تخلو من كلتا العلامتين فهي تعبر عن سياق النص. كما يحدد الرأس الذي يبدأ بـ @@ نطاق الأسطر التقريبي للقسم المعدل. وإذا لم يطبع Terminal أي فروق، فهذا يعني أن الملفين متطابقان تماماً. أما إذا ظهرت نتيجة تفيد باختلاف الملفين دون عرض أسطر مقروءة، فقد يعني ذلك أنه لا يتم التعامل مع المدخلات كنص عادي.

هذا الناتج مخصص للمراجعة فقط، وليس مستنداً مدمجاً؛ فلا تقم بنسخ علامات diff ولصقها في ملفك النهائي. اقرأ كل كتلة نصية متغيرة ضمن سياقها، وقرر ما يجب إدراجه في النسخة المدمجة، ثم عدّل نسخة في محرر نصوص واحفظها باسم جديد. وإذا كان هناك العديد من التعديلات المتداخلة في الملفين، فعادة ما يكون استخدام محرر diff مرئي أسهل للمراجعة.

استخدام المقارنة المرئية لمراجعة أسهل

في Visual Studio Code، افتح أحد الملفين، ثم استخدم Command Palette واختر File: Compare Active File With... لتحديد الملف الآخر. أو بدلاً من ذلك، في جزء Explorer، انقر بزر الماوس الأيمن على أحد الملفين واختر Select for Compare، ثم انقر بزر الماوس الأيمن على الملف الآخر واختر Compare with Selected. سيعرض VS Code محرر diff لمراجعة التغييرات. كما تصف وثائق البرنامج أيضاً كيفية مقارنة الملف النشط بالنسخة المحفوظة أو بالحافظة (clipboard). تسرد تعليمات مقارنة الملفات في Visual Studio Code هذه الخيارات.

يوفر تطبيق BBEdit مساراً آخر موجهاً لنظام Mac: اختر Search > Find Differences، وأضف الملفين في نافذة المقارنة، ثم ابدأ العملية. يسرد جدول ميزات BBEdit الحالي ميزة مقارنة الملفات وعرض الفروق على مستوى الأحرف ضمن إمكانياته. يوضح جدول مقارنة ميزات BBEdit إمكانية Find Differences المتاحة.

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

الدمج بتأنٍ والتحقق من النتيجة المحفوظة

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

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

سير العمل هذا مخصص لملفين نصيين. لا تعد المقارنة المرئية للفرق بالضرورة دمجاً ثلاثياً (three-way merge): فعندما يقوم شخصان بتعديل ملف أساسي مشترك، قد تحتاج أيضاً إلى ذلك الإصدار الأساسي للتمييز بين الإضافات المستقلة والتعديلات المتعارضة. وإذا كانت الملفات عبارة عن نصوص منسقة (rich-text) أو مستندات خاصة بتطبيقات معينة، فاستخدم ميزات المقارنة أو المراجعة المدمجة في تطبيق المستندات نفسه كلما أمكن ذلك؛ حيث إن تحويلها أو تصديرها إلى نص عادي قد يؤدي إلى فقدان التنسيق أو البنية الأصلية.

المصادر