Сравняване на текст (Diff Checker)
Сравнявайте два текста или фрагмента код ред по ред. Добавените, премахнатите и променените редове се маркират чак до точните думи, които се различават.
Работи в браузъраБез регистрацияНищо не се качва
Как да използвате: Сравняване на текст (Diff)
- Поставете оригиналния текст вляво и променения вдясно или отворете два файла.
- Сравнението се обновява, докато пишете. Изберете изглед Един до друг или Обединен.
- Отметнете Игнорирай интервалите, Игнорирай регистъра или Игнорирай празните редове, за да скриете шум като промяна на отстъпите.
- Използвайте Скрий непромененото, за да се фокусирате върху промените с по три реда контекст около всяка.
- Натиснете Копирай като пач или Изтегли .diff, за да получите стандартен unified diff, който се прилага с
git applyилиpatch.
Как работи този diff checker
Инструментът разделя двата входа на редове и изпълнява алгоритъма на Майърс — същия O(ND) алгоритъм, който използват git diff и GNU diff. Той намира най-кратката поредица от вмъквания и изтривания, която превръща оригинала в променения текст, така че резултатът показва възможно най-малко променени редове. Еднаквите начални и крайни редове се пропускат предварително, затова дори файлове с хиляди редове се сравняват почти мигновено.
Когато премахнат и добавен ред са един до друг, те се сдвояват като променен ред и се сравняват отново дума по дума. Думите, които реално са се променили, се маркират по-силно, така че преименувана променлива или редактирано число се открояват дори в дълъг ред.
Изглед един до друг или обединен
Един до друг показва оригинала вляво и новата версия вдясно, с номера на редовете и за двете. Това е най-удобният изглед за преглед на текст, конфигурационни файлове и малки промени в кода. Обединеният изглед редува премахнати (-) и добавени (+) редове в една колона — форматът, който използват инструментите за code review и пач файловете.
Формат unified diff (пач)
Експортираният пач следва формата diff -u: заглавие ---/+++, след това блокове (hunks), които започват с @@ -l,s +l,s @@, където l е номерът на първия ред, а s — броят редове на блока във всеки файл. Всеки блок съдържа три реда непроменен контекст, така че може да се приложи с patch -p0 или git apply, дори ако съседните редове са се преместили.
Кога да използвате опциите за игнориране
- Игнорирай интервалите смята редовете за еднакви, ако се различават само по интервали или табулации. Използвайте го след промяна на отстъпите или замяна на табулации с интервали.
- Игнорирай регистъра е удобно за SQL, HTML и логове, където главните букви нямат значение.
- Игнорирай празните редове скрива редове, добавени или премахнати само за разредка.