Добавьте страницу в закладки, чтобы не искать её заново — Ctrl+D / ⌘+D.

Если инструмент пригодился — поделитесь им с коллегами.

Работа с кодом · Сравнение версий

Сравнение кода и файлов онлайн — разница построчно и внутри строки

Вставьте две версии кода или перетащите два файла — различия появятся сразу. Строки стоят друг напротив друга, правка внутри строки выделена отдельно, совпадающие участки свёрнуты. Результат можно сохранить как .patch для git apply. Сравнение работает на том же движке, что и в VS Code.

Как в VS Code Monaco Editor и его алгоритм сравнения
Подсветка синтаксиса 20 языков, язык определяется сам
Большие файлы Десятки тысяч строк без зависаний
Патч для git Unified diff: копировать или скачать
Сверено с первоисточниками Формат патча — unified diff, как у git diff Обновлено: 18 октября 2026
Было
Стало
Различия
Загружаем редактор…

Код сравнивается в браузере и никуда не отправляется.

Результат сравнения

Как найти различия в коде и прочитать результат

Сравнение идёт построчно, как в git diff, а внутри изменённых строк — по символам.

Цвета

Красное удалено, зелёное добавлено

Слева — версия «Было», справа — «Стало». Удалённые строки отмечены красным, добавленные — зелёным. Если в строке поменялась только часть, например значение переменной, этот фрагмент выделен плотнее остальной строки. Подсветка синтаксиса сохраняется и на изменённых строках, поэтому код читается как в редакторе.

Рядом или одной колонкой

Два вида для разных задач

«Рядом» ставит одинаковые строки двух версий на одну высоту: на месте удалённого или добавленного блока появляется пустое место. Так удобно сверять длинные файлы. «Одной колонкой» показывает удалённые строки прямо над добавленными, как в код-ревью на GitHub. На телефоне версии добавляются по шагам — на вкладках «Было» и «Стало», а результат открывается на вкладке «Различия».

Свёрнутые участки

Видно только то, что изменилось

Вокруг каждой правки остаются по 3 строки контекста, остальной совпадающий код свёрнут в полосу «Скрытые строки». Щелчок по ней показывает скрытые строки. Если нужно видеть файл целиком, выключите «Сворачивать совпадения» в меню «Настройки».

Переходы

От правки к правке без прокрутки

Стрелки под редактором переходят к следующему и предыдущему изменению, с клавиатуры — Alt+F5 и Shift+Alt+F5, как в VS Code. Счётчик показывает, на каком изменении вы находитесь, а числа − и + — сколько строк удалено и добавлено.

Настройки

Пробелы, переносы строк и кодировки

Что считается отличием, а что нет, и как сравнить файлы из разных систем.

Отступы

Когда включать «Игнорировать отступы»

Если блок кода обернули в условие или сменили табуляцию на пробелы, отступ меняется у каждой строки, хотя логика та же. С этой настройкой из меню «Настройки» пробелы и табуляция в начале и в конце строк не считаются изменением, и на виду остаются только настоящие правки. Пробелы внутри строки по-прежнему сравниваются. Патч при этом остаётся точным: отступы в нём сохранены.

CRLF и LF

Разные переносы строк — не отличие

Windows завершает строки символами CRLF, Linux и macOS — LF. Инструмент сравнивает содержимое строк, поэтому файл, сохранённый в Windows, и тот же файл из репозитория совпадут.

Файлы

Кодировка файла определяется сама

Откройте файл кнопкой «Файл» в шапке панели или перетащите его на нужную панель. Два файла, брошенные вместе, встанут в «Было» и «Стало» по порядку. Инструмент читает UTF-8, Windows-1251 и UTF-16 с меткой BOM, поэтому кириллица из старых сайтов не превращается в «кракозябры». Язык подсветки выбирается по расширению. Размер одного файла — до 5 МБ, двоичные файлы вроде картинок и архивов не открываются.

Правка на месте

Исправьте код прямо в сравнении

Обе панели редактируются, различия пересчитываются на ходу. Стрелка рядом с изменением возвращает в «Стало» отдельный блок из «Было» — удобно, когда из нескольких правок нужно оставить не все. Получившуюся версию можно скопировать или скачать файлом из меню «…» в шапке панели.

Любое действие — вставку, открытие файла, очистку, обмен версий — отменяет кнопка «Отменить» над панелями или Ctrl+Z.

Экспорт

Как создать и применить patch-файл

Патч — текстовый файл с различиями, который понимают git и утилита patch.

Формат

Unified diff с тремя строками контекста

«Копировать патч» и «Скачать .patch» сохраняют различия в формате unified diff — том же, что выдаёт git diff. Если код открыт из файла, в заголовках патча стоит его имя. Такой патч понимают git apply и утилита patch.

Применение

Команды для терминала

Положите патч в папку проекта, где лежит исходный файл, и выполните одну из команд. Первая только проверяет, что патч применится без конфликтов.

git apply --check changes.patch
git apply changes.patch
patch -p1 < changes.patch
Пошаговая инструкция

Как сравнить два кода онлайн

Три шага для любого языка.

Добавьте две версии кода

Вставьте исходный код в панель «Было», изменённый — в «Стало». Можно открыть файлы кнопкой «Файл» или перетащить два файла сразу.

Посмотрите различия

Изменения подсвечиваются сразу, язык определяется автоматически. При необходимости выберите язык в списке, включите «Игнорировать отступы» в меню «Настройки» или вид «Одной колонкой».

Пройдите по правкам и сохраните патч

Переходите между изменениями стрелками или клавишами Alt+F5. Чтобы применить правки в проекте, скопируйте патч или скачайте файл .patch.

Вопросы и ответы

Частые вопросы о сравнении кода

О файлах, пробелах, языках и патчах.

Перетащите оба файла в редактор: первый встанет в «Было», второй в «Стало». Или откройте каждый кнопкой «Файл» в шапке своей панели. Различия появятся сразу, язык подсветки определится по расширению файла.

Нет. Сравнение и создание патча выполняются в вашем браузере. Редактор загружается с нашего сайта, код никуда не передаётся. Поэтому инструментом можно сравнивать закрытый рабочий код.

В меню «Настройки» включите «Игнорировать отступы». Тогда пробелы и табуляция в начале и в конце строк не считаются изменением. Пробелы внутри строки сравниваются всегда. Разные переносы строк CRLF и LF инструмент не считает отличием и без этой настройки.

HTML, CSS, SCSS, LESS, JavaScript, TypeScript, JSON, PHP, Python, SQL, XML, YAML, Markdown, Java, C#, C и C++, Go, Ruby, Shell и INI, включая .htaccess. Сравнивать можно любой текст: подсветка влияет только на вид, а не на поиск различий.

Положите файл .patch в папку проекта с исходным файлом и выполните git apply changes.patch. Без git подойдёт утилита patch: patch -p1 < changes.patch. Проверить патч без изменения файлов можно командой git apply --check changes.patch.

Инструмент сравнивает текст построчно, поэтому переставленные ключи будут видны как изменения. Если JSON записан в одну строку, сначала разверните его в JSON-форматтере: так различия будут видны по строкам, а не одной сплошной правкой.

Один файл — до 5 МБ. Файл на десятки тысяч строк с обычными правками сравнивается меньше чем за секунду. Дольше всего сравниваются полностью переписанные файлы: несколько тысяч строк без совпадений занимают несколько секунд, страница при этом не зависает.