Открылась Компьютерная Ярмарка Expo-com.ru на Тульской 
6000 кв.м, 20 000 покупателей в день.
Удачное расположение (м. "Тульская"), большой ассортимент, автостоянка, лифты, кафе, туалеты, телефонная связь, интернет. 
Арендаторам: 1 месяц бесплатно
Режим работы и проезд см. здесь >>
реклама у нас
***

Все познается в сравнении

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

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

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

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

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

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

Есть возможность работы через командную строку, и даже присутствует свой API, позволяющий программистам пользоваться функциями Merge из своих приложений. Цвета, шрифты, варианты поведения при сравнении - все это можно настроить. Поддерживаются Unicode-файлы, то есть сравнить два файла с информацией из реестра, записанных в Unicode - проще простого. Результаты сравнения можно распечатать, что наверняка будет очень полезно для тех, кто анализирует чужой код с целью найти там ошибки или проанализировать, сколько изменений было внесено по сравнению с предыдущей версией файла.

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

А вот GrigSoftware для наших целей предлагает два отдельных продукта, которые, тем не менее, могут быть легко друг с другом интегрированы: Sychronize It! для сравнения и синхронизации папок и Compare It! - для файлов.

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

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

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

Что касается Compare It!, то, помимо стандартных функций, можно отметить несколько "изюминок". Например, при сравнении XML-документов можно использовать регулярные выражения, чтобы сравнивать только данные, а не разметку документа, фильтруя тэги. Сравнивать можно не только файлы, созданные в DOS или Windows, но и в Unix или Macintosh. Можно сгенерировать отчет о найденных различиях в виде HTML-документа для последующей публикации на веб-сайте. Не так давно была выпущена новая, пока еще бета, версия, о которой сами разработчики пишут, что "она содержит идеи и предложения, поступавшие от пользователей в течение 3-х лет".

Active File Compare отличает "встроенный" менеджер файлов, синтаксическое выделение для 10 типов файлов (имеются в виду исходные тексты на различных языках программирования, HTML и XML-документы и т.п.), и поэтому различия в строках отмечаются значками "на полях", а не различными цветовыми раскрасками. Редактирование файлов возможно, но по умолчанию оно выключено, чтобы при сравнении ничего не испортить. Для редактирования каждого конкретного типа файлов можно указать даже свой, "внешний" редактор. В остальном Active File Compare по основным возможностям не уступает своим "собратьям".

В этой статье автор ставил цель лишь познакомить вас с такого рода программами и рассказать, как они могут вам помочь, поэтому некоторые "фичи" не были подробно рассмотрены. В целом, если нам нужно только удобное сравнение папок или файлов, то вам подойдет любой из описанных продуктов. Однако у SynchronizeIt!, CompareIt! и Active File Compare есть русский интерфейс, а у Araxis Merge - мощный API, который программисты могут использовать из своих программ. И, как видно даже из нашего очень поверхностного обзора, схожие по сути функции могут быть реализованы по-разному. Следовательно, вы сможете сделать выбор, основываясь уже на своих личных предпочтениях. В любом случае, помните - все познается в сравнении.

Программы в каталоге Softkey.ru:

Ссылки по теме:

Автор статьи: Андрей Кулабухов

Источник: http://www.softkey.info/ 
 

На заметку:
Рекомендуем...Как ежемесячно получать прибыль со своего сайта? Ответ прост: 

1. Зарегистрируйтесь бесплатно в системе Globo Clicks 
2. Выберите подходящих рекламодателей и разместите код системы на вашем сайте.
3. Наблюдайте рост заработанных денег в вашем аккаунте системы Globo Clicks.
4. Закажите у Globo Clicks перевод Вам ваших денег любым удобным для вас способом: webmoney, банковский перевод и т.д. 
Регистрация в системе Globo Clicks 


Copyright ©  Internet Zone, info@izcity.com 
Условия использования материалов смотрите здесь.