Сравнение файлов – ТОП 4 способа сравнить два файла по содержимому

Содержание

Путеводитель по программам для сравнения данных

Бесплатные решения    

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

В путеводитель вошли 10 программ, которые можно назвать во многом универсальными: они не привязаны к определенному сервису или приложению, позволяют выполнять вышеназванные (и менее специализированные) задачи не только через графический интерфейс, но и в режиме командной строки.

Критерии сравнения выглядят следующим образом:

  • Интерфейс: поддержка режимов отображения, сохранение сессий, возможности настройки панели инструментов, колонок
  • Функциональность текстового редактора, работа с исходным кодом
  • Методы слияния и синхронизации, возможность трехстороннего сравнения
  • Экспорт отчетов, создание патчей (diff)
  • Дополнительные функции: интеграция со сторонними приложениями, поддержка расширений, протоколов и др.

SmartSynchronize

Домашняя страница: http://www.syntevo.com/smartsynchronize/

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

Режимы сравнения представлены в приветственном окне программы. Помимо диалога выбора файлов, здесь возможен просмотр истории и выбор сохраненного профиля. Также в настройках (Preferences) настраиваются фильтры: файловые — для отсеивания файлов по названию и расширению, и фильтры директорий — позволяют составить список исключений.

Для сравнения файлов используется двухпанельный режим side-by-side с синхронной прокруткой содержимого обеих панелей. Условных обозначений в SmartSynchronize немного, но, благодаря соединительным линиям (linking lines), операции сравнения и слияния очень интуитивны. SmartSynchronize указывает, куда и в каком направлении будет добавлен участок из одного файла в другой. Вставка текста производится одним кликом, позволяя обойтись без контекстного меню.

Кодировку и синтаксис документа можно определить вручную, предусмотрена подсветка синтаксиса для многих языков программирования и разметки, нумерация строк и другие редакторские функции, присущие интегрированным средам разработки IDE.

В целом, SmartSynchronize гибко настраивается, но все настройки распределены по разным разделам меню, что требует некоторого привыкания. Не хватает режимов отображения, настроек панели инструментов.

В режиме сравнения директорий выводится список файлов и статус для каждого из них, в нижней части окна доступен предосмотр. Метод сравнения — по содержимому или только по размеру и времени — определяется в настройках Edit → Preferences. Количество информационных колонок (тип файла, дата) нельзя увеличить, хотя отключить имеющиеся можно.

В SmartSynchronize реализовано как одностороннее объединение данных с левой или правой сторонами, так и обычная синхронизация. Конфигурацию можно сохранить для последующей загрузки, сделав снимок файловой структуры. Как поясняют разработчики, программа не распознает атрибуты файлов, поэтому использовать ее в качестве утилиты для резервирования нет смысла. Работа с архивами также не предусмотрена, равно как и с удаленными каталогами.

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

Функции сравнения, несомненно, востребованы программистами при контроле версий. Поэтому в заключение стоит сослаться на альтернативное решение этой же компании — SmartCVS. Программа представляет собой CVS-клиент с интегрированным инструментарием SmartSynchronize.

Резюме. SmartSynchronize предлагает неплохой инструментарий для работы с файлами и директориями, местами не поддающийся настройке и не выходящий за рамки базовых возможностей.

[+] Трехстороннее слияние
[+] Удобный текстовый редактор
[−] Отсутствие документации
[−] Невозможность синхронизации удаленных каталогов и архивов

WinMerge

Домашняя страница: http://winmerge.org/

WinMerge — программа для сравнения и объединения файлов и каталогов в ОС Windows. Ее можно использовать как отдельный инструмент либо в связке с проектами. В WinMerge встроен текстовый редактор с поддержкой языков программирования, подсветкой и нумерацией строк.

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

В режиме сравнения файлов в окне отображаются оба файла, в левой и правой части. Для удобной навигации по содержимому предусмотрена карта («Местоположения»). Строки, которые имеют различия, отмечены цветом, также с ними можно ознакомиться в панели «Отличия». Основные операции слияния доступны в разделе «Объединение».

Отдельного внимания заслуживает функциональность текстового редактора. Внешний вид поддается модификации. Помимо подсветки синтаксиса и нумерации строк, предусмотрена работа со скриптами, а расширение функциональности возможно за счет дополнений. Дополнения относятся к распаковщику, представлению и редактору скриптов.

При сравнении каталогов результаты выводятся табулированным списком. В нем содержатся сведения о названии файла (каталога), его расположении, результат сравнения, дата, расширение и другая информация. Настроить отображение можно с помощью колонок. При необходимости можно активировать рекурсивный режим или переключиться в представление в виде дерева для удобной навигации.

WinMerge позволяет выполнять одни и те же задачи разными способами — в том числе, с помощью перетаскивания или через контекстное меню Проводника. Можно создавать проекты для быстрого доступа к данным и настройкам. WinMerge работает в режиме командной строки, также программу можно использовать в связке с системами контроля версий (TortoiseSVN, Visual Studio, Rational ClearCase и т. п.).

Резюме. WinMerge — программа, в первую очередь, с уклоном на работу с проектами. Интеграция с SVN, функциональный редактор, фильтры и расширения — все это отлично дополняет базовые возможности при сравнении данных.

[+] Поддержка расширений
[+] Функциональный редактор
[+] Интеграция со сторонними приложениями
[−] Нет трехстороннего сравнения

Meld

Домашняя страница: http://meldmerge.org/

Meld — кроссплатформенная программа (OS X, Linux, Windows) для синхронизации файлов и директорий. С ее помощью осуществляется как двух-, так и трехстороннее сравнение. Прежде всего, инструментарий Meld будет полезен разработчикам, так как возможна интеграция с системами управления версиями: Git, Bazaar, Mercurial, Subversion и прочими.

Несмотря на поддержку нескольких платформ, приложение далеко не стабильно функционирует в Windows. Скажем, вкладки и окна не всегда открываются и закрываются корректно. Возможно, проблемы связаны с библиотекой PyGTK, входящей в инсталлятор. Запустить программу получилось не сразу и только от имени администратора. Ошибки возникают постоянно, в подтверждение — перечень текущих проблем.

В процессе сравнения файлов можно задействовать текстовый фильтр или поиск (поддерживается синтаксис regex). Предусмотрены подсветка синтаксиса (используется библиотека gtksourceview), нумерация строк, учет пробелов и другие опции, которые нужно активировать через настройки, так как по умолчанию они отключены. Вставки, изменения и конфликты в документе подсвечиваются, возможна быстрая навигация по списку изменений и экспорт в формате diff. Связь между файлами легко отследить с помощью соединительных линий и одним кликом произвести слияние нужных участков.

Сканирование файлов директорий работает очень медленно. Это связано с тем, что сравнение осуществляется по содержимому, а не по размеру и временно́й отметке. Проблема решается установкой флажка напротив соответствующей опции в настройках. Набор доступных колонок весьма ограничен: размер, дата модификации и разрешения. Хотя и можно воспользоваться файловым фильтром, просмотр длинного списка файлов все равно превращается в рутинный процесс: нельзя мгновенно остановить сканирование, свернуть дерево файлов, быстро переместиться к нужным элементам.

Разработчикам будет интересен третий режим работы приложения — Version Control View. Meld поддерживает интерфейс командной строки, поэтому предусмотрена интеграция со средами Git, Bazaar, Mercurial, Subversion и многим другими.

Резюме. Программа Meld зарекомендовала себя с хорошей стороны в среде Linux, чего нельзя сказать о функционировании в Windows. Нестабильная работа и неудобный интерфейс, отсутствие сессий, недостаточная гибкость настройки… С другой стороны, инструментарий программы неплох, а качественная адаптация Meld для Windows, возможно, лишь вопрос времени.

[+] Трехстороннее сравнение
[+] Поддержка систем контроля версий
[−] Медленная и нестабильная работа в Windows
[−] Неудобный и неинформативный интерфейс

Diffuse

Домашняя страница: http://diffuse.sourceforge.net

Diffuse —кроссплатформенный продукт для ОС Windows, OS X, Linux и BSD, по интерфейсу напоминающий Meld (в основе — библиотека PyGTK), но имеющий функциональные отличия. Заявлена интеграция с Bazaar, CVS, Darcs, Git, Mercurial, Monotone, RCS, Subversion и другими средами.

Продолжая сравнение с Meld: Diffuse характеризуется стабильностью, здесь нет внезапных зависаний. Доступна подробная документация, интерфейс переведен на русский язык. Однако сравнение директорий не входит в инструментарий, в программу заложены только функции сравнения файлов и их редактирования. В Diffuse можно обнаружить несколько режимов слияния: — двух-, трех- и многостороннее. Таким образом, источников сравнения может быть сколько угодно, вопрос лишь в быстродействии и удобстве. Касательно второго аспекта можно лишь сказать, что сессий здесь нет — соответственно, работа с большими проектами в Diffuse под вопросом.

Различия отмечаются цветом, сводка (Comparison Summary) доступна возле полосы прокрутки, для навигации по списку изменений предназначены кнопки на панели управления. Нумерация строк и подсветка синтаксиса с возможностью ручного переключения включены по умолчанию. В отличие от других подобных редакторов, в Diffuse нельзя сразу выделить произвольный участок текста, для этого необходимо дважды кликнуть по содержимому. В ином случае можно выделять текст и производить другие действия только построчно.

Очевидно, что в Diffuse перелинковки различий между файлами нет, поэтому слияние строк осуществляется менее интуитивным методом. Все доступные команды собраны в разделе «Слияние», куда нужно обращаться каждый раз за неимением команд в контекстном меню. В SmartSynchronize или других упомянутых решениях многие операции производятся в один клик.

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

Резюме. Функциональность такого рода востребована при слиянии нескольких текстовых документов. Программа лишена недостатков, присущих ближайшему аналогу Diffuse — Meld. Но, к сожалению, сравнение директорий и отчетность остались за бортом.

[+] Удобная работа со строками
[+] Интеграция с CVS
[+] Многооконное слияние
[−] Отсутствие сессий
[−] Маркировка изменений не интуитивна

Perforce P4 Merge

Домашняя страница: http://www.perforce.com/product/components/perforce-visual-merge-and-diff-tools

P4Merge нечасто упоминается среди других бесплатных продуктов (например, по сравнению с WinMerge). К тому же отыскать эту программу среди других компонентов комплекса Perforce непросто. Perforce — это коммерческая кроссплатформенная система управления версиями, обладающая широкой сферой применения, не в последнюю очередь за счет плагинов и интеграции с различными продуктами (IntelliJ IDEA, Autodesk 3D Studio Max, Maya, Adobe Photoshop, Microsoft Office, Eclipse, emacs и др.). Впрочем, P4 Merge может работать автономно от сервера Perforce, достаточно скачать программу с сайта разработчика для ее бесплатного использования.

Основные операции — это сравнение файлов (Diff) и слияние (Merge). Редактор документов предельно прост: есть нумерация, но нет подсветки синтаксиса. Редактировать файлы в двух панелях «на лету» нельзя, нужно выбрать одну из панелей, включить режим редактирования и затем сохранить изменения. Различия маркируются, для перехода между ними предназначены кнопки навигации. Ориентироваться по изменениям проще всего с помощью соединительных линий. В целом, интерфейс P4 Merge недостаточно удобен: в нем нет сводки по различиям, статистика по изменениям представлена суммарной цифрой, без детализации, для просмотра изменений нужно использовать ручное обновление.

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

Резюме. Конечно, в P4 Merge множество функциональных ограничений, особенно если сравнивать с платными продуктами. Приложение можно рассматривать сугубо как дополнение к серверу Perforce. Возможно, в поисках нужного инструментария следует обратить внимание и на другие компоненты, доступные на сайте разработчика.

[+] Диаграмма слияния в режиме Merge
[−] Слабая функциональность
[−] Невозможность редактирования на лету
[−] Отсутствие команд слияния

www.ixbt.com

7 способов сравнения файлов по содержимому в Windows ил Linux [АйТи бубен]

Веб-мастерам или владельцам сайтов часто бывает необходимо сравнить два файла по содержимому. Из этой статьи вы узнаете как сравнить два файла между собой. Здесь описаны все известные мне способы для сравнения текстовых файлов и скрипты (html, css, php и так далее).

Способ 1. Meld

Meld — графический инструмент для получения различий и слияния двух файлов, двух каталогов. Meld — визуальный инструмент сравнения и объединения файлов и каталогов для Linux. Meld ориентирован, в первую очередь, для разработчиков. Однако он может оказаться полезным любому пользователю, нуждающемуся в хорошем инструменте для сравнения файлов и директорий.

В Meld вы можете сравнивать два или три файла, либо два или три каталога. Вы можете просматривать рабочую копию из популярных систем контроля версий, таких, таких как CVS, Subversion, Bazaar-NG и Mercurial. Meld представлен для большинства linux дистрибутивов (Ubuntu, Suse, Fedora и др.), и присутствует в их основных репозиториях.

# aptitude install meld

Meld существует и под Windows, но я не рекомендую его использовать в этой операционной системе.

Способ 2. Сравнение содержимого двух файлов в программе WinMerge.

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

После установки, открываете пункт меню «Файл» — «Открыть». Выбираете файлы для сравнения. Для этого нажимаете на кнопку «Обзор» и выбираете файл. Выбрав файлы, нажимаете на кнопку «ОК».

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

Способ 3. diff

diff — утилита сравнения файлов, выводящая разницу между двумя файлами.

  • Для сравнения каталогов используйте эту команду:
    $ diff -qr <current-directory> <backup-directory>

Способ 4. Kompare

Kompare — отображает различия между файлами. Умеет сравнивать содержимое файлов или каталогов, а также создавать, показывать и применять файлы патчей. Kompare — это графическая утилита для работы с diff, которая позволяет находить отличия в файлах, а также объединять их. Написана на Qt и рассчитана в первую очередь на KDE. Вот ее основные особенности:

  • Поддержка нескольких форматов diff;

  • Поддержка сравнение файла linux и каталогов;

  • Поддержка просмотра файлов diff;

  • Настраиваемый интерфейс;

  • Создание и применение патчей к файлам.

Способ 5. Сравнение файлов в программе Total Commander

В Total Commander существует инструмент сравнения файлов по содержимому, где можно не только сравнить содержимое, но и редактировать его и копировать из одного файла в другой.

После запуска Total Commander – в одной из панелей выбираете (клавиша Insert) первый файл для сравнения – во второй панели открываете папку со вторым файлом и ставим на него курсор. Вызываем программу для сравнения: «Файлы→Сравнить по содержимому».

Для внесения изменений в файл достаточно нажать на кнопку «Редактировать». В программе доступны функции копирования и отката, поиска и изменение кодировки. Если вы внесли изменения в файл, то после закрытия окна сравнения, будет предложено сохранить изменения.

Способ 6. Сравнение файлов в Notepad++

Notepad++ не умеет сравнивать файлы. Для появления этого функционала в Notepad++ нужно установить плагин «Compare».

Запускаете редактор – переходите в пункт меню «Плагины» — «Plugin Manager» — «Show Plugin Manager». В новом окне выбираете плагин «Compare» и жмёте кнопку «Install».

После установки плагина откройте два файла и выбирите меню «Плагины» — «Compare» — «Compare (Alt+D)». Результат сравнения файлов будет представлен в отдельных панелях. Напротив строк, в которых найдены отличия будет стоять предупреждающий знак.

Способ 7. Сравнение файлов с помощью командной строки Windows

Сравнение с помощью командной строки Windows (cmd.exe) не позволяет редактировать файлы, но просто сравнить содержимое файлов, используя этот способ, вы можете.

Для вызова командной строки Windows перейдите «Пуск» — «Все программы» — «Стандартные» — «Командная строка» или нажмите клавиш «Windows+R», введите cmd и нажмите клавишу Enter.

В командной строке введите команду:

fc /N путь к первому файлу путь ко второму файлу

kak_sravnit_fajly_po_soderzhimomu.txt · Последние изменения: 2018/07/08 10:28 (внешнее изменение)

wiki.dieg.info

Сравнение файлов в Linux | Losst

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

В этой статье мы рассмотрим как выполняется сравнение файлов Linux. Разберем самые полезные способы, как для терминала, так и в графическом режиме. Сначала рассмотрим как выполнять сравнение файла linux с помощью утилиты diff.

Содержание статьи:

Сравнение файлов diff

Утилита diff linux — это программа, которая работает в консольном режиме. Ее синтаксис очень прост. Вызовите утилиту, передайте нужные файлы, а также задайте опции, если это необходимо:

$ diff опции файл1 файл2

Можно передать больше двух файлов, если это нужно. Перед тем как перейти к примерам, давайте рассмотрим опции утилиты:

  • -q — выводить только отличия файлов;
  • -s — выводить только совпадающие части;
  • — выводить нужное количество строк после совпадений;
  • -u — выводить только нужное количество строк после отличий;
  • -y — выводить в две колонки;
  • -e — вывод в формате ed скрипта;
  • -n — вывод в формате RCS;
  • -a — сравнивать файлы как текстовые, даже если они не текстовые;
  • -t — заменить табуляции на пробелы в выводе;
  • -l — разделить на страницы и добавить поддержку листания;
  • -r — рекурсивное сравнение папок;
  • -i — игнорировать регистр;
  • -E — игнорировать изменения в табуляциях;
  • -Z — не учитывать пробелы в конце строки;
  • -b — не учитывать пробелы;
  • -B — не учитывать пустые строки.

Это были основные опции утилиты, теперь давайте рассмотрим как сравнить файлы Linux. В выводе утилиты кроме, непосредственно, отображения изменений, выводит строку в которой указывается в какой строчке и что было сделано. Для этого используются такие символы:

  • a — добавлена;
  • d — удалена;
  • c — изменена.

К тому же, линии, которые отличаются, будут обозначаться символом <, а те, которые совпадают — символом >.

Вот содержимое наших тестовых файлов:

Теперь давайте выполним сравнение файлов diff:

diff file1 file2

В результате мы получим строчку: 2,3c2,4. Она означает, что строки 2 и 3 были изменены. Вы можете использовать опции для игнорирования регистра:

diff -i file1 file2

Можно сделать вывод в две колонки:

diff -y file1 file2

А с помощью опции -u вы можете создать патч, который потом может быть наложен на такой же файл другим пользователем:

diff -u file1 file2

Чтобы обработать несколько файлов в папке удобно использовать опцию -r:

diff -r ~/tmp1 ~/tmp2

Для удобства, вы можете перенаправить вывод утилиты сразу в файл:

diff -u file1 file2 > file.patch

Как видите, все очень просто. Но не очень удобно. Более приятно использовать графические инструменты.

Сравнение файлов Linux с помощью GUI

Существует несколько отличных инструментов для сравнения файлов в linux в графическом интерфейсе. Вы без труда разберетесь как их использовать. Давайте рассмотрим несколько из них:

1. Kompare

Kompare — это графическая утилита для работы с diff, которая позволяет находить отличия в файлах, а также объединять их. Написана на Qt и рассчитана в первую очередь на KDE. Вот ее основные особенности:

  • Поддержка нескольких форматов diff;
  • Поддержка сравнение файла linux и каталогов;
  • Поддержка просмотра файлов diff;
  • Настраиваемый интерфейс;
  • Создание и применение патчей к файлам.

2. DiffMerge

DiffMerge — это кроссплатформенная программ для сравнения и объединения файлов. Позволяет сравнивать два или три файла. Поддерживается редактирование строк на лету.

Особенности:

  • Поддержка сравнения каталогов;
  • Интеграция с просмотрщиком файлов;
  • Настраиваемая.

3. Meld

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

  • Сравнение двух и трех файлов;
  • Использование пользовательских типов и слов;
  • Режим автоматического слияния и действия с боками текста;
  • Поддержка Git, Mercurial, Subversion, Bazar и многое другое.

4. Diffuse

Diffuse — еще один популярный и достаточно простой инструмент для сравнения и слияния файлов. Он написан на Python. Поддерживается две основные возможности — сравнение файлов и управление версиями. Вы можете редактировать файлы прямо во время просмотра. Основные функции:

  • Подсветка синтаксиса;
  • Сочетания клавиш для удобной навигации;
  • Поддержка неограниченного числа отмен;
  • Поддержка Unicode;
  • Поддержка Git, CVS, Darcs, Mercurial, RCS, Subversion, SVK и Monotone.

5. XXdiff

XXdiff — это свободный и очень мощный инструмент для сравнения и слияния файлов. Но у программы есть несколько минусов. Это отсутствие поддержки Unicode и редактирования файлов.

Особенности:

  • Поверхностное или рекурсивное сравнение одного или двух файлов и каталогов;
  • Подсветка отличий;
  • Интерактивное объединение;
  • Поддержка внешних инструментов сравнения, такие как GNU Diff, SIG Diff, Cleareddiff и многое другое;
  • Расширяемость с помощью сценариев;
  • Настраиваемость.

6. KDiff3

KDiff3 — еще один отличный, свободный инструмент для сравнения файлов в окружении рабочего стола KDE. Он входит в набор программ KDevelop и работает на всех платформах, включая Windows и MacOS. Можно выполнить сравнение двух файлов linux для двух или трех, или даже сравнить каталоги. Вот основные особенности:

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

Выводы

В этой статье мы рассмотрели как выполняется сравнение файлов linux с помощью терминала, как создавать патчи, а также сделали небольшой обзор лучших графических утилит для сравнения файлов. А какие инструменты для сравнения используете вы? Напишите в комментариях!

losst.ru

Утилиты для быстрого сравнения документов / Программное обеспечение

Нередко при работе приходится сравнивать между собой различные модификации документов, например, исходную и измененную редакции материалов, подготовленных в Word либо в виде PDF-документов или презентаций, рабочую и обновленные версии прайс-листов с изменившимися ценами в Excel, разные версии текстовых документов и т.п. При этом вопрос не в том, какая из версий файлов является более свежей (это и так понятно из свойств файлов), а важно, что именно изменилось в документах с точки зрения содержимого. Сравнивать документы вручную — занятие неблагодарное из-за слишком больших затрат времени и возможности ошибок, ведь не заметить какую-то важную деталь при просмотре проще простого. Гораздо разумнее задачу сравнения файлов перепоручить компьютеру. В целом, в плане сравнения Word-документов все обстоит достаточно благополучно и без использования вспомогательных инструментов, хотя в версиях Word 2002 и Word 2003 данная возможность надежно скрыта от чужих глаз, и, вероятно, не так много пользователей о ее существовании вообще догадываются. Дело в том, что для сравнения документов здесь нужно вначале загрузить исходный файл. Затем из меню «Сервис» открыть команду «Сравнить и объединить исправления», указать файл, сравниваемый с исходным, и включить флажок «Черные строки». Только после этих манипуляций кнопка «Объединить» превратится в кнопку «Сравнить», и при щелчке по данной кнопке программа и проведет сравнение файлов. Результаты сравнения будут показаны во вновь созданном документе в традиционном режиме рецензирования. С появлением Word 2007 все стало гораздо проще, поскольку теперь достаточно переключиться на вкладку «Рецензирование», щелкнуть по кнопке «Сравнить» и указать сравниваемые версии документа. Результат сравнения окажется представленным в новом документе, где слева будет отображен отрецензированный документ с учетом изменений, а справа (друг над другом) — исходный и измененный документы. Теоретически, в Excel тоже возможно сравнение документов встроенными средствами, правда, только при работе в режиме фиксирования изменений. Однако это неудобно, поскольку каждую из измененных ячеек придется просматривать, наводя на нее мышь, так как изменения, внесенные в документ, отображаются во всплывающих окошках (примерно таких, как обычные примечания). Во-вторых, если названный режим не будет предварительно включен (команда «Сервис» > «Исправления» > «Выделить исправления», флажок «Отслеживать исправления»), то произвести сравнение XLS-файлов потом окажется невозможно. Что касается быстрого сравнения PDF-документов, то такая возможность, конечно, имеется в Acrobat 9 Pro и Acrobat 9 Pro Extended, но эти решения установлены далеко не на каждом компьютере. Поэтому при необходимости быстрого сравнения Excel-таблиц, PDF-документов, презентаций, а также документов в других форматах, в частности, текстовых файлов и программных кодов, приходится прибегать к использованию дополнительного инструментария. Вариантов тут множество, и это могут быть как комплексные решения, позволяющие работать с несколькими файловыми форматами, так и узкоспециализированные утилиты. Немалая часть подобных решений предлагается за приличные деньги — скажем, цена одного из самых известных в этой сфере комплексных решений Diff Doc составляет $99,95, а весьма популярная среди программистов утилита Araxis Merge оценивается в €119. Вместе с тем, на рынке имеются и вполне доступные по цене либо вообще бесплатные программы подобного плана, именно такие решения мы и оценим в данной статье. При этом основное внимание уделим комплексным решениям, а из узкоспециализированных средств отметим лишь утилиты для быстрого сравнения таблиц Excel, поскольку это одна из наиболее актуальных задач, а проведение сравнения Excel-документов комплексными решениями хоть и возможно, но менее эффективно, чем с помощью узкоспециализированных утилит.

⇡#Комплексные решения для быстрого сравнения документов

⇡#Compare Suite 7.0

Разработчик: AKS-Labs
Размер дистрибутива: 3,79 Мб
Распространение: условно бесплатная Compare Suite — удобный инструмент для быстрого сравнения текстовых файлов, документов MS Office, RTF-документов, файлов PDF, web-страниц (HTM), презентаций PowerPoint, бинарных и некоторых других типов файлов, а также файлов в ZIP- и RAR-архивах и на FTP-серверах. В случае сравнения листингов программ на ряде языков программирования (Object Pascal, HTML, C/C++, JavaScript, PHP и др.) предусмотрена подсветка синтаксиса. Имеется функционал для синхронизации текстовых файлов и сравнения папок вместе с подпапками. Демо-версия программы (имеется русскоязычная локализация) работоспособна в течение 30 дней и полностью функциональна. Стоимость коммерческой версии составляет 60 долл. Технология сравнения файлов в Compare Suite проста. Вначале выбирается метод сравнения файлов, для чего в меню «Сравнить» нужно выбрать один из вариантов: «посимвольно», «пословно», «по ключевым словам». Классическое посимвольное сравнение полезно в ситуациях, когда нужно зафиксировать малейшие отличия в написании слов — скажем, при сравнении листингов программ. Пословное сравнение документов, как правило, используется для сравнения разных версий одного и того же файла. С помощью метода сравнения по ключевым словам можно сравнить непохожие документы даже тогда, когда пословное сравнение невозможно. После выбора метода сравнения, в меню «Файл» надо выбрать команду «Новое сравнение файлов» и указать на левой и правой панелях файлы для сравнения. Программа проанализирует файлы и выделит все имеющиеся отличия (добавленные, измененные и удаленные фрагменты) различными цветами. Дополнительно можно создать сравнительный отчет с детальной информацией о сравниваемых файлах (команда «Файл» > «Отчет»). При сравнении файлов, отличных от текстовых, следует иметь в виду, что их сравнение во всех комплексных решениях (как в Compare Suite, так и в других утилитах) производится после преобразования в текстовый формат. На практике это означает, например, что если в сравниваемых версиях Word-документа одно и то же слово в конкретном предложении оказалось на разных строках, то оно будет причислено к списку изменений. При сравнении XLS-документов данные из таблиц перед проведением анализа извлекаются, а найденные отличия отображаются построчно в текстовом формате с указанием имени листа и названий столбцов, что позволяет ориентироваться в данных. По такой же схеме осуществляется сравнение PDF-документов и презентаций PowerPoint.

Если Вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.

3dnews.ru

Путеводитель по программам для сравнения данных

Платные решения    

Beyond Compare 3

Домашняя страница: http://www.scootersoftware.com/

Программа для сравнения файлов и папок, в том числе заархивированных или расположенных на удаленном сервере. С помощью Beyond Compare 3 также можно сравнивать ключи Реестра, изображения, MP3-теги, синхронизировать каталоги, редактировать исходный код и выполнять множество других задач.

Интерфейс Beyond Compare удобен за счет многовкладочного интерфейса: это позволяет работать с несколькими сессиями параллельно и в одном окне. Помимо того, можно создавать рабочие пространства (workspaces) — коллекции открытых сессий.

Важные отличия этого продукта от большинства аналогов — наглядность сравнения и удобство редактирования во всех доступных режимах. Скажем, сравнение двоичных файлов предусматривает также правку посредством HEX-редактора. При работе с изображениями различия отображаются как пиксели, не говоря уже о полноценном редактировании файлов. MP3-файлы можно сравнивать по метаданным. Поддержка дополнительных форматов обеспечивается плагинами.

В режиме сравнения файлов используется традиционный двухпанельный интерфейс. Цвет шрифта позволяет отметить важные различия (красная маркировка) и менее существенные (синяя), фоновый цвет также несет функциональное значение. Для правки текста предусмотрен полноценный редактор исходного кода с поддержкой соответствующих форматов (см. Tools → File Formats).

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

Отображение данных регулируется посредством файлового фильтра (вывод указанных типов файлов) или фильтра отображения (показ изменений). Все необходимые инструменты вынесены на панель инструментов справа от вкладок. В меню Actions находятся команды, связанные с синхронизацией и сравнением. Управление отображением доступно в меню View.

В сравнении каталогов могут быть задействованы различные источники — не только локальные, но также и удаленные каталоги, архивы (поддерживаются форматы RAR, ZIP, 7z и мн. др.), снимки файловой структуры (snapshots). Благодаря предосмотру, можно заранее ознакомиться с результатом синхронизации.

Рутинные задачи автоматизируются с помощью скриптов. В Beyond Compare есть поддержка командной строки и регулярных выражений. Отчет доступен для печати или вывода в форматах HTML и TXT.

Резюме. Beyond Compare представляет собой многофункциональное решение для синхронизации, слияния, редактирования различных типов данных. Наравне с функциональностью, очень удобен многовкладочный интерфейс с поддержкой сессий и рабочих пространств. В результате, программа хороша при работе как с малыми, так и с достаточно сложными проектами.

[+] Удобный интерфейс
[+] Работа с архивами и удаленными каталогами
[+] Возможности автоматизации
[+] Доступные фильтры и режимы отображения

Compare++

Домашняя страница: http://cmpp.coodesoft.com/

Compare++ представляет собой программу для сравнения директорий и текстовых файлов в ОС Windows. Позиционируется, прежде всего, как инструмент для программистов и веб-разработчиков: благодаря распознаванию функций, классов, документ с исходным кодом легко структурируется, удобен в навигации, редактировании.

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

Среди основных возможностей — сравнение файлов, каталогов и трехстороннее слияние. При сравнении данных можно быстро переключиться в один из двух режимов, ориентированных на работу с текстом или кодом. Во втором случае, на панели Function View выводится список классов, к каждому из которых легко перейти в документе и произвести с ним нужные действия (например, слияние) парой кликов мыши. Вообще говоря, Function View — не такая и редкость для редакторов исходного кода, но для программ данной категории это единичный случай.

Из других особенностей редактирования: предусмотрена нумерация строк, подсветка синтаксиса (C/C++, Java, C#, Javascript, CSS и мн. др.), в том числе парных скобок. Все внесенные в документах правки маркируются: текст был изменен, удален или добавлен. Результат сравнения можно экспортировать в diff-, txt- или html-файл и, опционально, отправить на email.

Сравнение директорий осуществляется без предосмотра. Синхронизация содержимого архивов и с удаленным сервером не предусмотрена, зато можно сохранять снимки файловой структуры и применять фильтры для файлов и каталогов. На панели инструментов также можно обнаружить дополнительные режимы отображения. Сравнение осуществляется по свойствам файла — дате модификации и размеру, возможно рекурсивное и сравнение по содержимому (соответствующие опции доступны в секции Folder Compare настроек). Колонки сортируются, но не поддаются настройке.

Возможна работа через интерфейс командной строки. Соответственно, Compare++ интегрируется с продуктами SVN, Git, Perforce, Microsoft TFS, SourceSafe и прочими системами в качестве внешнего инструментария для сравнения.

Резюме. Compare++ можно рассматривать как хорошо настраиваемый редактор исходного кода, с функциями сравнения и синхронизации. Равно как и наоборот — как программу для синхронизации с редакторскими функциями. В связке с интеграционными возможностями, программа будет полезна как дополнение к IDE-среде.

[−] Нет полноценной поддержки сессий
[−] Отсутствие расширений
[+] Удобная работа с исходным кодом
[+] Трехстороннее слияние
[+] Создание diff-патчей и отчетов

Araxis Merge

Домашняя страница: http://www.araxis.com/merge/

Araxis Merge — программа для визуального сравнения, слияния и синхронизации папок. Встроенный редактор распознает различные форматы документов: исходный код, веб-страницы, XML, PDF, Microsoft Office, изображения и т. п. Также в Merge предусмотрена интеграция с популярными системами управления версиями и другими средами разработки.

В Merge задействован вкладочный интерфейс, поддерживается сохранение сеансов и рабочих пространств со всеми настройками в отдельный файл. Лента Ribbon разделена на секции, благодаря этому расположение команд легко запоминается, инструменты для работы с текстом всегда под рукой. Все действия, связанные с редактированием и навигацией по тексту, доступны на ленте. Панель инструментов тщательно настраивается только в Mac OS, возможны и другие различия между версиями Merge, в зависимости от платформы. Расположение панелей легко изменить на вертикальное или горизонтальное расположение, можно добавить дополнительные информационные колонки. Таким образом, программа удобна, ее интерфейс продуман до мелочей.

Merge поддерживает 4 режима сравнения. Дополнительные режимы (сравнение изображений и двоичных данных) не столь интересны ввиду отсутствия инструментов редактирования. Поэтому далее речь будет идти о сравнении файлов и директорий.

Текстовый редактор поддерживает подсветку синтаксиса, нумерацию строк. При сравнении, кроме изменений, отмеченных соответствующим цветом, удобно отслеживать связи между строками посредством соединительных линий (Linking lines). Наведя курсор на соответствующий блок, можно применить для него операцию слияния с соседним файлом (функция Point-and-click merging). Здесь улавливается аналогия с упомянутой в первой части обзора программой SmartSynchronize. В документ можно добавлять закладки и комментарии. Экспорт отчетов, с занесением всех отличий, осуществляется в форматах DIFF, HTML, HTML-слайдшоу и XML.

Второй основной режим работы Araxis Merge — сравнение и синхронизация каталогов. Сильная сторона этого инструмента — поддержка различных источников: виртуальная файловая система, сетевые диски, проекты и другие источники. При сравнении, доступны две панели с отображением структуры каталогов, также несложно активировать режим трехстороннего слияния.

Конфигурация фильтров для директорий и файлов доступна в разделе Filters настроек. Они делятся на визуальные (вывод только нужных данных) и фильтры выбора (выбор файлов по заданным критериям).

В перечне доступных операций — объединение папок, побайтовое сравнение и сравнение по размеру и дате. При автосинхронизации файлы с конфликтами не обрабатываются и откладываются для принятия пользователем решения.

Потенциальные возможности Araxis Merge значительно возрастают, если брать в расчет интеграцию с Mercurial, Git, Subversion, Perforce и другими средами. Расширяемость обеспечивается встроенными в программу плагинами.

Резюме. Araxis Merge — программа с хорошо продуманным интерфейсом, оптимальным набором инструментов для сравнения, синхронизации и слияния данных. Из пожеланий — не хватает дополнительных режимов сравнения данных, в сочетании с удобным редактированием, как в случае с Beyond Compare.

[+] Интеграция со средами разработки
[+] Удобное визуальное сравнение
[+] Переключение режимов отображения
[+] Статистика и отчетность

UltraCompare Professional

Домашняя страница: http://www.ultraedit.com/products/ultracompare.html

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

Интерфейс UltraCompare предусматривает как сессии, так и рабочие пространства. Он удобен, не в последнюю очередь, за счет быстрого доступа к файловым операциям: например, можно выбрать для сравнения нужные файлы прямо из боковой панели. Здесь же, в левой панели, можно создать фильтр. Дополнительные опции можно найти в разделе Ignore Options настроек.

На выбор предоставлены следующие режимы работы с данными: сравнение текста и папок (плюс трехстороннее слияние для обоих видов), двоичных файлов, синхронизация папок. Смена режима осуществляется через меню Mode. Выбрав его, можно указать источники для левой и правой панелей, перетянув их в окно и нажав кнопку Go.

При сравнении текста, строки с различиями маркируются фоновым цветом и помечаются символами рядом с нумерацией. Соединительные линии позволяют отследить связь между двумя документами и помогают при слиянии, соответствующие команды доступны в разделе меню Merge. Для редактирования исходного кода рекомендуется прибегнуть к инструментарию программы UltraEdit. Возникает вопрос: насколько целесообразно оплачивать одну из дополнительных возможностей, если стоимость этого редактора выше, чем UltraCompare.

Для рекурсивного и не рекурсивного сравнения доступны локальные, удаленные и съемные источники, также поддерживаются ZIP-, RAR-, JAR- архивы. Результаты сравнения отображаются по обе панели (источник — получатель). Сравнение осуществляется по размеру и возрасту или содержимому файлов.

Пользователь имеет возможность создавать правила синхронизации (rules): замена файлов, удаление устаревших элементов, копирование и прочие. Возможна синхронизация по расписанию. Поддерживается командная строка, в наличии интеграция с приложениями для контроля версий: AnkhSVN Perforce, QVCS, Subversion, TortoiseCVS, TortoiseSVN и другими.

Резюме. Инструментарий UltraCompare включает в себя наиболее востребованные режимы сравнения, слияния и синхронизации, позволяя задействовать различные источники данных. Широкие интеграционные возможности посредством командного интерфейса. Вроде бы, все в угоду разработчику, но редактор без подсветки синтаксиса — это явный недостаток.

[+] Сравнение архивов и удаленных каталогов
[+] Интеграция с приложениями для контроля версий
[+] Трехстороннее сравнение
[−] Ограничения встроенного редактора

ExamDiff Pro

Домашняя страница: http://www.prestosoft.com/edp_examdiffpro.asp

Программа ExamDiff предназначена для визуального сравнения текстовых, двоичных файлов и директорий. В длинном списке основных функций можно обнаружить поддержку плагинов. Благодаря им, возможна работа с такими форматами, как XML, HTML, PDF, MS Excel, Word, PowerPoint и другими.

Очевидно, что для редактирования кода ExamDiff открывает широкие возможности, как по функциональности, так и по удобству. Меню View позволяет настроить отображение панелей на усмотрение пользователя, панель инструментов полностью настраиваема.

Редактор поддерживает подсветку синтаксиса, нумерацию, в документе можно создавать закладки. Предусмотрены различные способы навигации по документу: собственно, навигационная панель, выпадающий список, синхронная прокрутка. Многие действия выполняются без лишних, как часто случается, манипуляций: например, для перехода к настройкам цветовой схемы достаточно кликнуть по маркировкам в статусной строке, для добавления исключения — поставить флажок Skip возле выпадающего списка, а через контекстное меню открывается доступ к командам плагинов.

Среди дополнительных возможностей для синхронизации директорий — поддержка удаленных источников, архивов. В ExamDiff можно создавать снимки для последующего сравнения, применять фильтры для различных групп файлов (в настройках имеется ряд предустановок), применять фильтры по временной отметке и размеру.

Помимо редакций Pro Standard и Pro Master, существует бесплатная версия ExamDiff. В ней нет трехстороннего слияния, сравнения директорий и двоичных файлов.

Резюме. ExamDiff Pro содержит необходимые инструменты для редактирования. Редактор адаптирован для работы с большими документами, исходным кодом, позволяя быстро ориентироваться по документу и переходить в нужный участок файла.

[+] Гибкая настройка
[+] Расширенные функции редактирования
[+] Поддержка расширений
[+] Удобная навигация по документам

Сводная таблица

ПрограммаРазработчикСтоимостьПлатформыЭкспортПоддержка CVS
SmartSynchronizesyntevo GmbHБесплатно для некоммерч. использованияLinux, Mac OS, WindowsHTML+
WinMergeDean GrimmБесплатноWindowsCSV, HTML, XML, табулированный+
MeldStephen KennedyБесплатноBSD, Solaris, Linux, Mac OS, WindowsDIFF+
DiffuseDerrick MoserБесплатноWindows, Mac OS, Linux, BSD+
Perforce P4 MergePerforceБесплатноWindows, Mac OS, Linux, Sun Solaris
Beyond Compare 3Scooter Software$30+Windows, LinuxXML, HTML, CSV, TXT, Unix Patch+
Compare++Coode Software$29,95WindowsDIFF, TXT, HTML+
Araxis MergeAraxis LTD.?99+Mac OS, WindowsDIFF, HTML, HTML-слайдшоу, XML+
UltraCompare ProfessionalIDM Computer Solutions, Inc$49,95WindowsTXT, DIFF-отчет+
ExamDiff ProPrestoSoft$34,99WindowsUNIX, HTML, Diff+
 
ПрограммаСравнениеПодсветка синтаксисаСессии
локальных директорийудаленнных директорий / архивовтрехстороннеефайловдругие виды
SmartSynchronize+−/−++++ (история, профили)
WinMerge+−/−+Двоичные (исполняемые) файлы++ (проекты)
Meld+−/−+++
Diffuse−/−++Многостороннее+
Perforce P4 Merge−/−++Изображения
Beyond Compare 3++/+++Двоичные файлы, изображения, MP3, файлы Реестра++
Compare+++−/−++++ (история)
Araxis Merge++/+++Двоичные файлы, изображения++
UltraCompare Professional++/+++Двоичные файлы+
ExamDiff Pro++/+++Двоичные файлы++

www.ixbt.com

О подходах к сравнению версий файлов / Habr

Люди, использующие системы контроля версий исходного кода (SVN, Mercurial, Git и т.п.), наверняка часто пользуются возможностью сравнения версий файлов для просмотра внесенных пользователями изменений. Существует множество независимых программ сравнения версий (WinMerge, BeyondCompare и др.). При сравнении версий, как правило, две версии файла показываются рядом друг с другом таким образом, чтобы одинаковые (неизменившиеся) части документов были расположены напротив друг друга, а изменившиеся (добавленные и удаленные) выделяются соответствующим цветом.
Уверен, многим было бы интересно узнать, какие алгоритмы могут использоваться для реализации такого сравнения.

В качестве простейшего случая рассмотрим сравнение простых текстовых (plain text) файлов.
Текстовый файл — это набор строк (а точнее абзацев) текста. Абзац — это строка символов, заканчивающая символами конца строки и перевода каретки (в Windows) или только одним символом конца строки (в Unix/Linux). Не будем отвлекаться на то, что символы могут представлены различными кодировками и будем считать, что мы имеем дело с однобайтной ASCII. Задача сравнения версий такого файла заключается в определении того, какие абзацы не изменились, а какие изменились, были удалены или добавлены.

Большинство алгоритмов сравнения файлов основаны на алгоритме поиска самой длинной совпадающей подпоследовательности (LCS, Longest Common Subsequence). Действительно, самая длинная общая подпоследовательность символов двух файлов можно считать неизменившейся частью, а все остальные участки (в зависимости от их принадлежности к одной из версий) являются удаленными (если они принадлежат старой версии) или добавленными (если принадлежат новой). Существует несколько реализаций алгоритма LCS, вычислительная сложность которых варьируется от полиномиальной (прямо пропорциональной длинам сравниваемых подпоследовательностей) до логарифмической. Данные алгоритмы также очень требовательны к памяти. Становится понятно, что использовать посимвольное представление документов в таких условиях нереально. Удобнее в качестве единиц сравнения использовать абзацы. Их можно сравнивать «как есть», т.е. непосредственно как строки, но в целях оптимизации удобнее их прохэшировать и сравнивать хэши, а к самим строкам обращаться только в случае совпадения хэшей (т.к. от коллизий при хэшировании никто не застрахован).

Таким образом, первый этап алгоритма сравнения заключается в загрузке списка абзацев документов в память (да, нам действительно придется загрузить оба сравниваемых документа целиком в память), их хэшировании и применении к полученным хэшам алгоритма поиска наибольшей общей совпадающей подпоследовательности (LCS). На выходе данного этапа мы получим информацию о гарантированно неизменившихся (т.е. совпадающих) участках документов. Все остальные участки являются изменившимися. Если изменившемуся участку из старой версии соответствует пустой участок в новой версии, значит этот участок был удален. Если изменившемуся участку новой версии соответствует пустой участок в старой версии, значит этот участок был добавлен.

Сложнее дело обстоит с измененными участками, присутствующими и в старой, и в новой версии. Например, между двумя совпадающими участками можем располагаться изменившийся участок, который в старой версии составлял два абзаца, а в новой — три. Равных (совпадающих) абзацев среди этих пяти абзацев нет. Если остановиться на этом шаге, можно просто при показе пользователю выделить эти группы абзацев целиком как измененные и переложить задачу анализа подробных изменений на пользователя. Но можно поступить хитрее. Можно рассчитать оптимальное соответствие для абзацев измененного участка, чтобы точно знать, какой которому соответсвует. Для оценки «похожести» каждой пары абзацев можно применить алгоритм расчета так называемой «дистанции редактирования» (или расстояния Левенштейна). Дистанция редактирования — это минимальное количество операций вставки, удаления и замены одного символа на другой, необходимых для превращения одной строки в другую. Вычислив дистанцию редактирования между каждой парой абзацев измененного участка, мы можем применить метод динамического программирования для вычисления оптимального соответствия между абзацами измененного участка. Самым неоптимальным вариантом размещения при этом является тот, когда все абзацы измененного участка в старой версии считаются удаленными, а все абзацы новой версии — добавленными (т.е. никто никому не соответствует). Все остальные варианты размещения будут более оптимальны. Применив метод динамического программирования (как именно его можно в данном случае применить, напишу в другом посте) можно найти самый оптимальный вариант соответствия. Теперь мы уже точно знаем, какой абзац измененного участка какому соответствует и сможем применить алгоритм сравнения (на этот раз уже посимвольный) для вычисления точных изменений внутри абзаца.

Если уважаемым читателям интересны подробности и особенности реализации алгоритмов поиска наибольшей общей подпоследовательности, дистанции редактирования и применения метода динамического программирования для вычисления оптимального соответствия группы изменившихся абзацев (последний алгоритм я считаю своего рода моим ноу-хау), просьба писать об этом в комментариях, и я напишу об этом более подробные посты (каждый из этих алгоритмов сам по себе очень интересен и заслуживает отдельного поста).

habr.com

Как сравнить файлы? Сравнение файлов в Total Commander и NotePad++ — Технический отдел

Лень – двигатель прогресса, как бы странно это не звучало, некоторые изобретения очень упрощают нам жизнь. В своей статье я хочу рассказать, как сравнить два файла доступными способами.
А решил написать об этом после одного случая, когда мне нужно было узнать какие изменения внесли разработчики в процедуру для базы данных при новом обновлении.

 

А помогли мне в этом две программы, которые обосновались у меня уже давно:
1. Total Commander
2. Notepad++

Сравнение файлов в TotalCommander

Допустим у нас уже есть два файла которые нам нужно сравнить.
1.Тогда выделяем их в TotalCommander

2. Переходим в меню ФАЙЛ —-> Сравнить по содержимому.

3. В открывшимся окне имеем две области в каждой из которых видно содержимое файлов.

В итоге, строки с изменениями подсвечиваются серым, конкретные отличия красным шрифтом.

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

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

Сравнение файлов в Notepad++

Notepad++ по моему мнению лучший блокнот который должен быть у каждого. Он имеет большой функционал, расширяющийся за счет плагинов.

Итак, как нам поможет Notepad++ для сравнения файлов? Ответ прост: нужно скачать нужный плагин.

Открываем пункт «Плагины» —> «Plugin Manager»—> «Show Plugin Manager».

В открывшимся менеджере высыплется большой список различных плагинов. Выбираем «Compare« и устанавливаем.

Далее,

  1. открываем два файла в Notepad++.
  2. Делаем так  чтобы оба файла были открыты во вкладках рядом друг с другом.
  3. На панели меню идем в Плагины —> Compare —> Compare, либо используем горячие клавиши – Alt + D и запускаем плагин.

В открывшимся окне, как и в TotalComander, имеем две области в каждой из которых видно содержимое файлов.

Зеленые плюсики — это то что добавилось,

Красные минусы -то что удалилось,

Желтые восклицательные знаки — то что изменилось.

Выход из режима Compare через меню Плагины –> Compare –> Clear Results, либо Ctrl + Alt + D.

deptech.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *