حول هذه الأداة
يقارن مدقّق الفروق بين نسختين من نص ويُبلّغ بدقة عن الأسطر التي أُضيفت أو حُذفت أو بقيت دون تغيير. تُشغّل هذه الأداة فرق أسطر Myers بتعقيد O(ND) — وهي خوارزمية أطول تتابع جزئي مشترك الجشعة ذاتها التي تقف خلف `git diff` — لإيجاد أقصر سكربت تحرير بين المدخل الأصلي والمدخل المُعدَّل، ثم تعرضه على هيئة عرض موحّد: الأسطر المحذوفة على خلفية حمراء مع علامة "-" في الهامش، والأسطر المضافة على خلفية خضراء مع "+"، والأسطر غير المتغيّرة بلا تمييز. أما الأسطر التي عُدِّلت بدلًا من أن تُستبدل بالكامل، فتحسب لها فرقًا ثانيًا على مستوى الأحرف وتُبرز فقط المقاطع التي تغيّرت فعليًا على كل جانب.
استخدمه لمراجعة تغيير في الشيفرة قبل الإيداع، أو لرصد الفرق بين ملفي تهيئة أو استجابتي واجهة برمجة، أو للتأكد مما طاله بحثٌ واستبدال فعليًا، أو لفحص التعديلات في النصوص والتوثيق. فعّل "Ignore case" لمعاملة تغييرات حالة الأحرف على أنها متساوية، أو "Ignore trailing whitespace" لتجاهل ضوضاء نهايات الأسطر، وتُعاد المقارنة مباشرةً أثناء الكتابة.
يجري كل شيء في متصفحك — لا تُرفع أيٌّ من كتلتي النص أبدًا، فمن الآمن لصق شيفرة المصدر أو التهيئة أو غير ذلك من المحتوى الحسّاس.
الأسئلة الشائعة
ما الخوارزمية التي يستخدمها مدقّق الفروق لمقارنة النص؟
تستخدم معظم فروق الأسطر، ومنها هذه، خوارزمية Myers بتعقيد O(ND)، التي تجد أقصر سكربت تحرير (أقل عدد من إدراجات الأسطر وحذفها) بالبحث في مخطط التحرير على امتداد أقطاره. وهو النهج ذاته الذي يستخدمه Git افتراضيًا.
ما الفرق بين فرق الأسطر وفرق الأحرف؟
يُبلّغ فرق الأسطر عن أسطر كاملة بوصفها مضافة أو محذوفة أو غير متغيّرة، بينما يُبرز فرق الأحرف الأحرف الدقيقة التي تغيّرت ضمن السطر. وتقوم هذه الأداة بكليهما: تحسب الفرق سطرًا بسطر أولًا، ثم تُجري فرق أحرف على الأسطر المتغيّرة المتقابلة لعرض الإبرازات الضمنية.
هل يغيّر تجاهل حالة الأحرف أو المسافات اللاحقة النص المعروض؟
لا. لا تؤثّر هذه الخيارات إلا في كيفية مقارنة الأسطر لتحديد التطابق، فيُعامَل سطران يختلفان فقط في حالة الأحرف أو المسافات اللاحقة على أنهما متطابقان. أما النص الأصلي، بما في ذلك حالة أحرفه ومسافاته بالضبط، فيُعرض دائمًا دون تغيير في الفرق.