DEV

Онлайн-порівняння текстів: знаходьте відмінності

Що таке diff?

Diff (від difference) — алгоритм порівняння двох текстів, що показує, які рядки були додані, видалені або змінені. Алгоритм LCS (Longest Common Subsequence) лежить в основі більшості diff-інструментів. Він мінімізує кількість змін для перетворення одного тексту в інший, відображаючи лише реальні відмінності.

Режими порівняння

Порядкове (line diff) — порівнює рядок за рядком: стандартний режим для коду. Порівняння слів — підсвічує зміни на рівні окремих слів усередині рядка. Посимвольне порівняння — максимальна деталізація, корисно для шаблонів або конфігурацій. Наш інструмент підтримує всі три режими з кольоровим підсвічуванням: зелений — додано, червоний — видалено.

Практичне застосування

Перевірка змін у коді перед commit. Порівняння версій документів або договорів. Виявлення несподіваних змін у конфігураційних файлах. Рев'ю PR без IDE. Перевірка результатів рефакторингу. Порівняння відповідей API між версіями бекенду.

Unified diff формат

Стандартний формат виводу diff: рядки що починаються з + — додані, з - — видалені, без префіксу — контекст. @@ показує номери рядків. Цей формат використовується в Git, patch-файлах і системах code review. Наш інструмент відображає і візуальний, і текстовий unified diff.