Программа для сравнения текстовых файлов. Команда FC - сравнение файлов. Сравнение двух файлов в программе Total Commander

Вам необходимо сравнить два текстовых документа и найти в них отличия? Тогда WinMerge то, что Вам требуется! Эта программа предложит открыть Вам два документа, которые необходимо сравнить. Сразу же после их открытия в специальной графе она подсветит те фрагменты текста, которые отличаются. Вносите необходимые изменения и сохраняйте документы прямо в программе.

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

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

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

Общие

  • Поддержка Microsoft Windows 98/ME/2000/XP/2003/Vista/2008
  • Поддержка Windows, Unix и Mac форматов текстовых файлов
  • Поддержка юникода
  • Интерфейс со вкладками

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

  • Визуального сравнения и слияние текстовых файлов
  • Гибкий редактор с подсветкой синтаксиса, номера строк и слов
  • Основные различия по линиям
  • Панель разницы показывает текущее различие в двух вертикальных панелей
  • Расположение панели показывает карту файлов по сравнению
  • Перемещенные линии обнаружения

Сравнение папок

  • Регулярные выражения, фильтры на основе файлов позволят исключить и в том числе пунктов
  • Быстрое сравнение, используя размеры файла и дату
  • Сравнивает одну папку или включает в себя все подпапки
  • Можно показать папку сравнить результаты в виде дерева стиле зрения

Управление версиями

  • Создает файлы исправлений (нормальный, контекстно-и единой форматы)
  • Подсказки цветом различия файлов
  • Интеграция Visual SourceSafe и Rational ClearCase

Другое

  • Shell интеграция (поддерживает 64-разрядные версии Windows)
  • поддерживает использование архивных файлов - 7-Zip
  • Поддержка плагинов
  • Локализуемый интерфейс

В статье на примере рассматривается работа с Compare Suite - наиболее мощная программа для сравнения текстовых файлов. Сравниваем два простых текстовых файла

Программа для сравнения текстовых файлов Compare Suite - это удобная и прекрасно оптимизированная утилита для анализа и синхронизации практически любых документов, используемых при работе на компьютере. Для сравнения документов, созданных в офисном пакете от Microsoft, файлов PDF, и других типов. Так же легко и чрезвычайно быстро утилита позволяет произвести анализ и сравнение целых каталогов с документами, хотя основное назначение Compare Suite - программа для сравнения текстовых файлов. На данной функции программы мы и остановимся на этой странице. Запустим Compare Suite, и выберем в меню пункт "Новое сравнение файлов". Эта же команда выполняется комбинацией горячих клавиш Shift+Ctrl+F. Затем нужно указать программе, какие именно текстовые файлы, нам нужно сравнить, удобнее всего использовать прием drag-and-drop - поместив мышкой каждый сравниваемый файл в свое окошко.

После этого никаких дополнительных действий не требуется - свою работу программа для сравнения текстовых файлов Compare Suite выполнит автоматически. Выбрав в меню другой метод сравнения файлов, из трех возможных, (посимвольно, пословно или по "ключевым словам") вы запустите новую процедуру сравнения. Там же в меню можно выставить и условия для сравнения, например - "игнорировать все пробелы в тексте". Пункты меню "Перейти к следующему (предыдущему) отличию" автоматически переместят положение курсора на необходимую строчку. Эти же действия инициируются горячими клавишами "Ctrl+N" и "Ctrl+P".

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

Кроме того, программа для сравнения текстовых файлов Compare Suite дает возможность сравнить содержание текстового файла с содержимым буфера обмена, и вести редактирование текста прямо в своем окне. Отредактированный файл, разумеется, потом можно сохранить. Программа для сравнения текстовых файлов Compare Suite корректно работает с различными кодировками текста. На снимках с экрана, приведенных в качестве иллюстрации, "правый" текстовый файл был намерено преобразован кодировку UTF-8, то есть в те самые "кракозябры", перед которыми пасует встроенный "Блокнот" Widows. Так же свободно программа для сравнения текстовых файлов Compare Suite обращается с текстовыми файлами форматов различных операционных систем, как Windows, так и Unix и Mac систем.

Друзья, рад вас приветствовать на страницах моего блога. Сегодня хочу рассказать вам о 4 способах сравнения файлов по содержимому. Необходимость найти различия возникает довольно часто. Приходится делать сравнение файлов по типу или размеру. Сравнение файлов в Word и Excel тоже весьма распространённая процедура в офисах и конторах, где постоянно приходится работать с текстовыми документами и таблицами.

Но для веб-мастера или владельца сайта часто бывает необходимо сравнить два файла по содержимому. И речь идёт не о текстовых файлах, хотя и они тоже анализируются так же, а о форматах.html, .css, .php и так далее. Тех файлах, где нужно найти изменения в коде. И порой изменение одного лишь знака может обеспечить уйму трудностей с достижением результата.

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

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

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

Этой программой я пользуюсь давно. Для работы с файлами, на мой взгляд, это одна из лучших программ. Программа Total Commander платная, но можно в течение 30 дней пользоваться и пробной версией, которая по истечении времени также будет работать, но с предложением о покупке. Скачать пробную версию можно .

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

А теперь разберём инструмент сравнения файлов по содержимому, который также позволяет редактировать и копировать данные в процессе анализа.

Итак, запускаете Total Commander – в одной из панелей выбираете первый файл для сравнения – во второй панели открываете папку со вторым файлом.

Откроется новое окно, также разделённое на две панели. В самом верху, в каждой панели будет срока для выбора файла. В одной из них первый файл будет уже выбран (но может быть и пустым). Для выбора файла нужно нажать на небольшую кнопочку со стрелочками (>>) .

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

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

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

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

Если вам приходилось, хоть когда-либо, редактировать файлы html, css и php. То наверняка вы слышали о бесплатном редакторе кода Notepad++. Скачать программу можно .

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

Но для этого потребуется установить небольшой плагин. Делается всё это непосредственно внутри самого редактора.

Итак, запускаете редактор – переходите в пункт меню «Плагины » «Plugin Manager» «Show Plugin Manager» .

В новом окне выбираете плагин « Compare» и жмёте кнопку « Install» .


После установки плагина можно приступать к сравнению содержимого файлов. Для этого нужно открыть два файла – перейти в пункт меню «Плагины» « Compare» « Compare (Alt+ D)» .

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

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

Строка, которая полностью отличается, будет отмечена на одной панели красным минусом на другой зелёным плюсом. И подсвечена соответствующим цветом.

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

Завершить сравнение файлов можно комбинацией клавиш Ctrl+ Alt+ D .

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

Эта программа позволяет сравнивать не только содержимое файлов, но и содержимое целых папок. Этим она похожа на Тотал Коммандер, только программа бесплатная. Скачать её можно .

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

Запустив программу, нужно выбрать файлы для сравнения. Открываете пункт меню «Файл» «Открыть» .



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

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

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

Этот способ позволяет сравнивать содержимое файлов без сторонних программ. Достаточно воспользоваться стандартным инструментом операционной системы Windows.

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

Для этого открываете «Пуск» «Все программы» «Стандартные» «Командная строка» . И вводите вот эту команду:

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

выглядит это так:

Fc /N C:\Мои документы\file1.txt C:\Мои документы\file2.txt

Готовый результат будет выглядеть так:


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

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

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

На этом сегодня всё, всем желаю успехов и хорошего настроения и до встречи в новых статьях и видеоуроках!

С уважением, Максим Зайцев.

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

Человеческая лень способна творить чудеса! Лень в хорошем смысле слова:). Ну, согласитесь, что нерезонно делать вручную рутинную работу, если есть возможность поручить ее компьютеру. Вот и сегодняшняя наша программа была найдена именно при попытке переложить на «плечи» ПК трудоемкий процесс по сравнению разных текстовых файлов.

А дело было так… Недавно мы с Русланом Богдановым переводили сайт на HTML5 с использованием разметки Schema.org . При этом приходилось часто сравнивать старую (еще не правленую) версию каждой странички с новой, в которой уже были внесены определенные правки.

И вот после пары часов работы в двух окнах Блокнота, мне пришла в голову мысль о том, что, должна быть программа для автоматического поиска различий в текстовых файлах. Сей вопрос был задан вездесущему Гуглу , и вот такая программа нашлась:). Называется она WinMerge .

Эта программа автоматически находит и отображает разницу в содержимом двух текстовых файлов, что позволяет сравнивать и править открытые документы намного быстрее, нежели при обычном визуальном поиске! По своим возможностям WinMerge лишь немного уступает платным конкурентам, таким, как, например, Compare Suite:

Сравнение с платным аналогом

Кроме того обе программы поддерживают множество кодировок (в том числе и Юникод), могут быть включены практически в любые системы контроля версий и позволяют сравнивать даже заархивированные документы (для поддержки WinMerge данной функции требуется установленный архиватор 7-ZIP и специальный плагин).

Установка WinMerge

Программа имеет две версии: обычный инсталлятор и portable-версию. Для работы с портативной Вам будет достаточно ее распаковать из архива и (при желании) запустить bat-файл (Register.bat ) для интеграции пунктов приложения в контекстное меню системы (вторым «батником» (UnRegister.bat ) можно убрать данный пункт).

В случае выбора Вами стандартного инсталлятора, Вам понадобится запустить его из скачанного архива и проследовать указаниям мастера установки. Со всеми предложениями можете соглашаться, нажимая «Далее», пока не попадете на экран выбора компонентов:

Здесь внимательно проверьте язык (-и), который выбран по умолчанию: он должен быть «Russian». Также можно установить дополнительные плагины, которые добавят несколько новых предфильтров в программу.

Следующим шагом, требующим Вашего вмешательства, будет окно выбора дополнительных задач:

По умолчанию WinMerge создает только ярлык на панели быстрого запуска и интегрируется в контекстное меню. Вы же можете еще создать ярлык на Рабочем столе (что, ИМХО, удобнее:)) и добавить папку программы в системные пути для быстрого доступа.

Сравнение текстовых файлов в WinMerge

После завершения установки запустится пустое окно WinMerge. Для начала работы Вам потребуется открыть пару файлов, которые подлежат сравнению. Это можно сделать, вызвав пункт «Открыть» из меню «Файл», или же, кликнув по одноименной кнопке на панели инструментов:

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

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

Окно WinMerge примет примерно такой вид:

Итак, что мы можем делать со всем этим:

  1. При помощи кнопок на панели инструментов (или же контекстного меню) Вы можете перемещаться по найденным отличиям и быстро копировать изменения из одного файла в другой.
  2. При помощи «Карты отличий» (окно «Местоположения») можно быстро оценить расположение отличий в разных документах. При этом на «карте» существует несколько цветных обозначений:
  • желтым - обозначается любое отличие в документах;
  • красным - обозначается выбранное отличие;
  • серым - обозначается отсутствующая часть кода в одном из документов.
  • При помощи окна «Отличия» Вы можете видеть часть кода, которая различается,. Править код здесь нельзя, но можно производить его копирование посредством функции в контекстном меню.
  • И, естественно, при помощи окон с открытыми документами мы можем осуществлять, как быстрое копирование фрагментов кода, так и полную его правку. По сути, перед нами обычный текстовый редактор, типа продвинутого Блокнота с подсветкой синтаксиса для множества языков программирования (причем цвета подсветки Вы можете настроить на свое усмотрение для каждого из языков в настройках)!
  • Советую также при работе с программой периодически обращать внимание на статусную строку в самом низу рабочего окна. В ней иногда можно видеть разнообразные подсказки, а также счетчик найденных отличий.

    По завершению работы с документами (или при необходимости) Вы можете сохранить, как оба редактируемых файла, так и только отдельные из них. Для этого зайдите в меню «Файл» и выберите соответственно пункт «Сохранить файл слева» или «Сохранить файл справа»:

    Настройка программы

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

    Это добавит перед панелью с кодом столбик с нумерацией строк, а сами строки теперь будут помещаться в любой размер панели за счет автоматического переноса текста (при этом структура строк полностью сохраняется)!

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

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

    Здесь в разделе «Предсравнение» нам доступны дополнения для:

    • игнорирования комментариев;
    • игнорирования колонок (видимо для HEX);
    • игнорирования пунктуации;
    • игнорирования табуляции;
    • игнорирования номеров строк.

    Скажу честно, я этими плагинами не пользовался, поскольку мне вполне хватало стандартных способностей WinMerge, но кому-то они может и пригодятся;).

    Если Вам и этих возможностей программы мало, то Вы легко можете подстроить практически все в «Настройках»:

    «Заблудиться» в этих настройках можно в два счета, поскольку их очень много, но я обращу внимание только на те, которые нам могут пригодиться для дальнейшей работы.

    В первой группе настроек («Основные») я бы советовал активировать две опции: «Автоматически установить на первое отличие» (для большего удобства) и «Сравнения папок» в разделе «Включить окна множественного сравнения для». Последняя опция позволит открывать неограниченное количество вкладок со сравнениями при сличении папок (о котором мы поговорим чуть ниже).

    Следующие настройки, подлежащие изменению находятся в разделе «Сравнение»:

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

    Во-первых, можно отключить сравнение непечатаемых символов. Это может существенно сузить круг поисков отличий в файлах.

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

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

    Сравнение папок

    Кроме того, что в WinMerge мы можем автоматически сопоставлять файлы, мы можем еще и сравнивать папки, находя в них все измененные файлы! Однако специальной кнопки для открытия папки в программе не предусмотрено. Как же быть? Нам нужно в поле «Левый» указать любой файл из нужной нам директории, а затем убрать его имя, оставив только название папки:

    После такой манипуляции поле «Правый» автоматически переключится в режим «Выбор каталога» и нам останется только выбрать нужную папку.

    Особенностью режима сравнения папок является то, что все файлы отображаются в одном общем списке. При этом:


    Теперь, если в «Настройках» Вы активировали опцию множественных вкладок при сравнении папок, то Вы можете открывать любые подпапки и файлы - их сравнение будет открываться в новой вкладке.

    Формирование отчетов

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

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

    1. Список с разделяющими запятыми (простой текст, например, TXT-файл).
    2. Список с разделяющими табуляторами (тоже текстовый файл).
    3. Простой HTML (формат веб-страниц (на мой взгляд, самый удобный)).
    4. Простой XML (тоже лучше открывать в браузере, поскольку этот формат позволяет сворачивать ненужные ветки сравнений).

    Выбираем любой из стилей, а затем жмем «Обзор» и указываем в какую папку и под каким именем (а также, с каким расширением имени) сохранить отчет. Нажимаем «Ok» - радуемся:).

    Здесь же (в меню «Инструменты») Вы найдете еще несколько пунктов, которые придутся по вкусу разве что серьезным разработчикам. Это функции создания патчей и фильтрации содержимого файлов и каталогов.

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

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

    Достоинства и недостатки программы

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

    Выводы

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

    Если Вы работаете с текстами и Вам требуется часто сравнивать разные версии одного и того же документа, то WinMerge сможет существенно облегчить и ускорить Ваш труд. А ведь компьютер для того и создан, чтобы брать как можно больше рутины на себя, оставляя нам время для творчества;).

    P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.

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

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

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

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

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

    SmartSynchronize

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

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

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

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

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

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

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

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

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

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

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

    WinMerge

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

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

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

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

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

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

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

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

    Meld

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

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

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

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

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

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

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

    Diffuse

    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

    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
    [−] Слабая функциональность
    [−] Невозможность редактирования на лету
    [−] Отсутствие команд слияния