Что является хорошим эквивалентом WinMerge для Mac? [закрыто]


78

WinMerge - отличный и очень мощный инструмент для слияния файлов, но, как видно из названия, это только Windows. Какой хороший эквивалент на Mac?


Вы хотите различить / объединить содержимое файлов или содержимое каталогов?
HairOfTheDog

Ответы:


49

Вы можете использовать FileMerge , разностное решение Apple. Это бесплатно и поставляется с каждой установкой Mac OS X.
Единственным недостатком является то, что вам нужно установить Инструменты разработчика . Вы можете найти их на вашем DVD-диске, который появился, когда вы купили свой Mac (Snow Leopard или более раннюю версию). Вы также можете получить инструменты разработчика в App Store, если ваша версия ОС поддерживает это.

Затем вы можете найти его на /Developer/Applications/Utilities/FileMerge.app


У вас должны быть инструменты разработчика, чтобы иметь их, поэтому, если у вас их нет (и вы не хотите их иметь), попробуйте DiffMerge, как предложено в другом ответе.
Мартин Маркончини

6
После использования FileMerge и DiffMerge я нашел FileMerge лучшим инструментом, особенно для сравнения папок. Но оба не так близки к WinMerge.
Мурукеш

4
На моей установке, это было расположено в/Applications/Xcode.app/Contents/Applications/FileMerge.app
Бенуа Duffez

2
Согласовано. FileMerge ничто не близко к WinMerge.
Джонни

1
@bobobobo FileMerge отлично; Я не знаю, почему ты называешь это бедным. Я никогда не находил инструмент сравнения, который мне нравится почти так же (а DiffMerge настолько уродлив, что я хотел вырвать глаза, когда попробовал). Единственный раз, когда я видел поведение, о котором вы говорите, это когда он имеет дело с несовместимостью новой строки.
Марнен Лайбоу-Козер

21

Я нашел следующие приложения:

  • FileMerge ( opendiff)

    Он больше не поставляется с инструментами командной строки Xcode, вы должны установить Xcode из App Store или с сайта Apple Developer .

  • DiffMerge

  • Pretty Diff

    Открытый исходный код и удобный инструмент сравнения кодов для многих языков.

  • сливаться

    Может быть установлен с помощью Homebrew с помощью команды:brew install meld

  • TkDiff

    Может быть установлен с помощью Homebrew с помощью команды:brew install tkdiff

  • TextWrangler

  • VisualDiffer

    Доступно в App Store

  • Калейдоскоп

    Коммерческая с бесплатной пробной версией.

  • Araxis Merge

    Коммерческая с бесплатной пробной версией.

  • KDiff3

    Больше не в Homebrew, он не разрабатывался и не обновлялся с 2014 года.

Смотрите также:


2
Я бы сказал это несколько раз, если бы мог. Никогда не знал, что TextWrangler может сравнивать файлы.
LarsH

1
opendiffвыдает мне следующую ошибку: xcode-select: error: инструмент 'opendiff' требует Xcode, но активный каталог разработчика '/ Library / Developer / CommandLineTools' является экземпляром инструментов командной строки
Pieter

@Pieter Итак, вы должны установить XCode, как в случае ошибки. Проверьте это или Google вопрос.
Кенорб

У меня сложилось впечатление, что мне нужны только инструменты командной строки Xcode , но все в порядке.
Питер

1
kdiff3больше не в brew, возможно потому, что он не разрабатывался и не обновлялся с 2014 года.
wisbucky

13

Согласитесь с рекомендацией для FileMerge.app. У вас также есть бесплатная кроссплатформенная программа DiffMerge , но мне больше нравится FileMerge.


DiffMerge не так хорош, как Windiff. Он сравнивает только файлы. Вы не можете просто скопировать, вставить и сравнить содержимое.
Каннан Рамамурти

1
DiffMerge больше не разрабатывается / не обновляется с 2013 года.
wisbucky

10

Сегодня наткнулся на эту тему и подумал, что я добавлю новый кроссплатформенный инструмент различий в OSS, который поддерживает сравнение файлов и каталогов. Это хорошая альтернатива WinMerge для Mac. http://meldmerge.org/

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

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


Спасибо за публикацию ответа, digger69! Не могли бы вы добавить немного больше информации о Мелде? Как это решает вопрос ОП? Спасибо!
daviesgeek

Я не могу заставить это работать, и это нуждается в pygtk и использует необычный формат сжатия xz.
Лулалала

1
Вы можете установить его с помощью HomeBrew ( github.com/mxcl/homebrew ) brew install
meld

FileMerge гораздо более способный и визуально привлекательный, чем Meld (у которого, например, нет хорошего представления diff3). Нет никакой причины использовать Meld на Mac OS.
Марнен Лайбоу-Козер

2
Способ установки в meldнастоящее время (по состоянию на 2017 год) составляет: brew tap caskroom/cask; brew cask install meld. Теперь оно связано как приложение OSX и не требует никаких дополнительных пакетов.
Висбуки

8

Современное, мощное, но платное (в настоящее время март-2013 $ 69,99) приложение для слияния файлов для OS X - Kaleidoscope . Он обрабатывает папки, файлы и даже изображения. Копия объявления со страницы:

Сравните текст в макетах Blocks, Fluid и Unified в двухстороннем и трехстороннем режимах. Быстро перемещайтесь и ищите самые читаемые различия, которые вы когда-либо видели.


1
Не так здорово, не по цене, которая сейчас составляет около 100 долларов США. В нем отсутствует ряд функций, и он часто может полностью зависать на больших файлах. До того момента, когда мне (один раз) пришлось выключить машину через выключатель питания, потому что я не мог вызвать Force Quitдиалог. Тот самый файл, прогонять GNU diff? Менее 3 секунд, чтобы вернуть результаты. Когда это работает, это работает хорошо, но это не всегда. Кроме того, это действительно довольно наивно при распознавании блоков перемещенного текста.
JL Peyret

7

Araxis Merge (http://www.araxis.com/merge_mac/index.html) является золотым стандартом в этой области и имеет аналогичную стоимость (каков вес битов?). Существуют версии для Windows и Mac, и это действительно здорово, если вы проводите много времени, выполняя многостраничные сравнения и слияния (более распространенные в наши дни распределенные системы контроля версий).

Цены начинаются (по состоянию на сентябрь 2011 года) с $ 129.


Зачем платить так много, когда существуют отличные бесплатные инструменты?
Марнен Лайбоу-Козер

1
Чтобы держать ответ в актуальном состоянии, я начну со ссылки: araxis.com/merge/index.en, но в основном вы можете сравнить не только двухсторонние текстовые файлы.
Арт Тейлор

1
FileMerge делает отличные 3-х сторонние различия. P4Merge сравнивает некоторые двоичные файлы (хотя мне это и не нужно). Оба бесплатны.
Марнен Лайбоу-Козер

2

Возможно, вам будет интересно приложение SourceTree: http://www.sourcetreeapp.com/ SourceTree - это бесплатный клиент для Mac для систем контроля версий Git и Mercurial. Поэтому это не универсальный инструмент сравнения или слияния, но стоит упомянуть об этом.


«SourceTree - это бесплатный клиент Mac для систем контроля версий Git и Mercurial». Звучит неплохо, но включает ли это diff / merge для любого файла?
parsley72

Он включает в себя инструмент сравнения / слияния.
sventechie


2

Perforce, приложение для управления исходным кодом, имеет бесплатный * diff и инструмент для слияния, который является кроссплатформенным и прекрасно работает на моем Mac. Это называется P4Merge .

http://www.perforce.com/product/components/perforce-visual-merge-and-diff-tools

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

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


2

Есть приложение под названием SemanticMerge для Mac .

SemanticMerge, как следует из названия :-), это инструмент, способный объединяться на основе структуры кода вместо блоков текста. По сути, это означает, что сначала он анализирует код, а затем выполняет слияние на основе методов, классов и т. Д., Поэтому он достаточно дружествен к рефакторингу, поскольку может сопоставлять методы / функции, даже если они были перемещены в разные места в файле.

На момент написания этой статьи Semantic поддерживает .NET, C, Java, C ++ и JavaScript.


Звучит замечательно, но ссылка мертва
Владимир

1

Я пользователь Mac, привязанный к элегантности и эстетике как к значительному фактору производительности по когнитивным причинам. Полностью родной и элегантный Human Interface имеет для меня первостепенное значение.

Я перепробовал много соперников (Araxis, P4Merge и многие другие). Я купил несколько. Я любил Изменения в течение долгого времени. Теперь мой любимый калейдоскоп. Он обеспечивает трехстороннее объединение, умный способ сравнения изображений, удобный и элегантный интерфейс.

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


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

Вы не согласны. Я написал «Чаще, чем нет». По моему опыту, кросс-платформенные приложения «чаще всего» не чувствуют себя нативными. «выглядеть разумно» легко, но далеко не достаточно. Я предпочитаю нативные приложения, несмотря на риск блокировки, потому что, честно говоря, я не хочу тратить много часов, пытаясь справиться с каждым шагом из-за сверхъестественной долины, в которую вырыло приложение, пытаясь, но в основном терпя неудачу, чувствовать себя родным, оставаясь кросс-платформенным Примером такого (в остальном отличного) приложения является YNAB.
Жан-Дени Мюис

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

Полагаю, я не сталкивался с такими же кроссплатформенными приложениями, как у вас. Я дал вам пример. Что может быть хорошим примером действительно нативного кроссплатформенного приложения? Передача, возможно, что я согласен, действительно чувствует себя полностью родным. Вернуться к теме под рукой. Я не знаю ни одного кроссплатформенного приложения сравнения / сравнения, которое бы казалось действительно родным для Mac.
Жан-Дени Мюйс

Chrome и Firefox (и другие приложения XUL, такие как Zotero и KomodoEdit) являются отличными примерами кроссплатформенных приложений, которые действительно похожи на Mac. Фрескобальди также на удивление хорош в этом отношении, особенно если учесть, что это приложение на Python (я полагаю, оно использует библиотеку виджетов с хорошей оболочкой для Mac). SublimeText является еще одним примером; у него точно нет «стандартного» интерфейса в стиле Mac, но он определенно чувствует себя нативным.
Марнен Лайбоу-Козер

1

Мелд это хороший вариант ..

шаги, чтобы установить соединение на Mac:

  1. Установите MacPorts:

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

  2. Откройте свой терминал и выполните следующие команды

    i) Установка rarian: "sudo port install rarian"
    II) Установка meld: "sued port install meld"

  3. Настройте службу dbus для запуска при загрузке

    I) sudo launchctl load -w /Library/LaunchDaemons/org.freedesktop.dbus-system.plist
    II) launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plistdf

  4. Добавьте переменную LC_ALL в файл .bash_profile в вашем / home экспорт каталога LC_ALL = en_US

  5. Введите команду meld в терминале, и приложение будет запущено для вас.

посаживания MELD-работу-на-макинтош-ос-х


Не могли бы вы объяснить, как он установлен, а не просто опубликовать ссылку?
Jash Jacob

Эти инструкции сейчас устарели. Все, что вам нужно сделать сейчас, это:brew tap caskroom/cask; brew cask install meld
wisbucky

1

Я использую VisualDiffer .

Это не так хорошо , как WinMerge, но довольно близко и очень дешево (всего $ 3 4,99 на данный момент!). Это перспективно.

Вот скриншот.

Скриншот VisualDiffer


Все еще использую это ежедневно 2 года спустя. Рекомендую.
Джонни

0

Изменения - http://connectedflow.com/changes/


Добро пожаловать, спрашивай, Джордан Спасибо за публикацию ответа! Можете ли вы добавить дополнительную информацию об изменениях? Как это отвечает на вопрос ОП? Ответы должны быть не просто ссылками, а на конкретный вопрос ОП.
daviesgeek

Похоже, что эта ссылка больше не работает.
Сэм

0

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

Моё любимое платное, но недорогое решение (30 долларов) для слияния содержимого файлов - Beyond Compare 3 . Да, Beyond Compare 3 доступен только как собственное приложение для Windows или Linux, но я запускаю его в WiNE с помощью простого в использовании приложения Wineskin Winery .

Когда дело доходит до слияния содержимого каталогов, KDiff3 и Beyond Compare 3 могут это сделать, но IMO KDiff3 не очень удобен в этом отношении. К счастью, Beyond Compare 3 выделяется при слиянии каталогов даже в OS X.


0

Похоже, что планируется сделать WinMerge 3 доступным и для Mac:


Я не сделал свой выбор для Mac. Но в Windows я использую WinMerge, в Linux Meld (которая также доступна для Mac), в настоящее время использую twdiff , я уже попробовал FileMerge.appи собираюсь попробовать DiffMerge .

Примечание о Мелде:

Meld работает на OS X и Windows, но на данный момент нет пакетов «все в одном» для этих систем. На OS X Meld доступен из MacPorts или Fink.


1
Нет обновлений в репозитории с 2011 года. WinMerge 3 мертв? bitbucket.org/grimmdp/winmerge
Джонни

Meld теперь в комплекте с OSX. brew tap caskroom/cask; brew cask install meld
Wisbucky
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.