Форматер Diff
Сравнение текстовых и кодовых различий с форматированной подсветкой и параллельным просмотром
Оригинал
Изменённый
Результат diff
Советы
- Используйте одинаковые отступы в обоих текстах для более точного построчного сравнения.
- Унифицированный вид лучше подходит для небольших изменений. Параллельный вид — для значительных различий.
- добавлен удалён изменён
- Используйте кнопку обмена для изменения направления сравнения и просмотра добавлений как удалений.
- Ctrl/Cmd + Enter запускает сравнение из любого поля ввода.
Два режима diff, выбор автоматически
Data Diff отталкивается от того, что вы вставили. Когда обе части парсятся как JSON, переключается на структурный diff; во всех остальных случаях сравнивает построчно. Режим также можно зафиксировать вручную с помощью вкладок над результатом.
Что показывает структурный diff JSON
- Добавлено — ключ или индекс, существующий только в изменённой части, с предпросмотром его значения.
- Удалено — ключ или индекс, существующий только в исходной части.
- Изменено — один и тот же путь содержит разное значение в каждой части, показывается как было → стало.
- Изменён тип — путь содержит объект с одной стороны и скаляр или массив с другой.
- Каждая запись содержит путь в той же нотации $.store.books[0].title, которая используется в Инспекторах JSON, XML и YAML, чтобы вы могли сразу перейти к нему в исходнике.
Текстовый diff, когда он нужен
Построчное сравнение подсвечивает каждую добавленную и удалённую строку с номерами строк. Оно работает с кодом, логами, файлами конфигурации и любым текстом — включая JSON, у которого изменилось форматирование, но не данные.
Пример: что видит режим JSON, но не видит текстовый режим
Два фрагмента ниже различаются только порядком ключей и отступами. Текстовый diff помечает практически каждую строку как изменённую; структурный diff JSON корректно сообщает об отсутствии изменений.
{
"name": "web",
"version": "1.0"
}
{
"version": "1.0",
"name": "web"
}
Как это вписывается в ваш рабочий процесс
Data Diff — это этап сравнения в рабочей среде. Отправляйте сюда любой документ из других инструментов:
Часто задаваемые вопросы
Ответы на распространенные вопросы о форматировании Diff Formatter
Да, наш форматер diff полностью бесплатен и не требует регистрации. Вся обработка выполняется в вашем браузере.
Вы можете сравнивать любое текстовое содержимое: код, конфигурационные файлы, JSON, XML, обычный текст или любой другой текстовый формат.
Добавленные строки отображаются с зелёным фоном, удалённые — с красным, а изменённые строки показывают обе версии рядом.
Да. Нажмите кнопку обмена для изменения порядка оригинального и изменённого текстов, превращая добавления в удаления и наоборот.
Инструмент использует алгоритм сравнения Myers — тот же алгоритм, который используется Git для сравнения текстов, обеспечивая точные и минимальные различия.
Формат unified diff (-u), создаваемый git diff, diff -u и любой крупной системой контроля версий — один или несколько разделов файлов, каждый с заголовками ---/+++, маркерами hunk @@ и строками +/-/контекста. Точный формат задокументирован в GNU diffutils; форматтер переформатирует hunks с выровненными номерами строк и подсветкой синтаксиса.
@@ -3,7 +3,8 @@ означает: в старом файле, начиная со строки 3, показано 7 строк; в новом файле соответствующий раздел начинается со строки 3 и занимает 8 строк. Числа позволяют с первого взгляда оценить размер изменения — здесь добавлена одна строка. Форматтер сохраняет эти маркеры нетронутыми, поскольку от них зависят patch(1) и git apply.
Нет — он форматирует и поясняет патчи, но не применяет их. Для применения используйте git apply или patch -p1; для слияния конфликтующих hunks — инструмент слияния вашей VCS. Форматирование намеренно работает только на чтение, поэтому можно безопасно вставить любой патч, включая содержащий отклонённые или конфликтующие hunks, для наглядного просмотра.
Авторитетные источники
Стандарты и официальная документация, определяющие форматы, с которыми работает этот инструмент.
Связанные инструменты
JSON-форматировщик
Форматируйте, проверяйте и украшайте JSON-данные с интеллектуальными отступами и подсветкой синтаксиса
Восстановление JSON
Мгновенно исправляйте некорректный, невалидный или сломанный JSON. Восстанавливайте обрезанный вывод LLM, пропущенные запятые, ключи без кавычек и висячие запятые прямо в браузере
Форматтер JSONL
Форматирование файлов JSON Lines (NDJSON) и конвертация между JSON и JSONL. Проверка каждой строки и форматирование NDJSON-потоков с отступами