Сравнение нескольких текстовых файлов при помощи Meld

Относительно недавно занявшись изучением и программированием на PHP, я столкнулся с необходимостью сравнения одного или нескольких вариантов одного и того же кода.
Как же это сделать

Meld: графическое средство сравнения и объединения файлов

Автор: Барт ван Куйк.
Оригинал: «meld: graphical tool to diff and merge files», 2 мая 2007 г.

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

В командной строке для сравнения двух файлов принято использовать diff. Хотя убежденные хакеры могут не согласиться, вывод diff сложно воспринимается на глаз, пусть даже и существует двухсторонний режим вывода --side-by-side.

Графическая визуализация предоставляет гораздо больше возможностей, и Meld пытается использовать их лучшим образом. Эта утилита позволяет графически увидеть разницу между двумя-тремя файлами. И, в отличие от diff, Meld позволяет редактировать и объединять файлы напрямую. Различия между файлами копируются или перемещаются щелчком мыши.

meld httpd.conf httpd.conf.default

Что там изменилось в httpd.conf?

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

Если вы — программист, то вы, возможно, контролируете версии файлов с Subversion или CVS. Meld поддерживает и это. Напишите в командной строке

meld my/project/directory

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

Meld работает с локальной копией subversion

Хотя это не документировано, Meld, кажется, поддерживает bzr, CVS, darcs, mercurial, monotone и subversion. Meld включает и другие возможности, не упомянутые здесь, такие как режим сравнения директорий, нескольких языков и так далее. Советую просто установить пакет и осмотреться.

Альтернативные средства

На странице проекта можно найти небольшое сравнение с другими похожими средствами:

Kdiff3
Программа очень хороша для больших слияний. Есть возможность автоматического слияния.
Xxdiff
Имеет ряд приятных возможностей вроде скриптования и отмены слияния CVS. Сравнивает за раз два или три файла и только две директории.
TkDiff
Просмотр различий только между двумя файлами. Требует только tk.
GtkDiff
Средство сравнения для Gtk1.x. Кажется, проект умер.

Meld есть в Debian, начиная с Sarge, и в Ubuntu, начиная с Warty. Зависит от языка скриптования Python.

Взято отсюда.

Материалы распространяются под лицензией Creative Commons: Атрибуция — Некоммерческое использование — С сохранением условий (Attribution-NonCommercial-ShareAlike) 3.0 Unported.
Рейтинг@Mail.ru