Использование araxis merge для сравнения папок в ветках git (OSX)

Я знаю, как настроить araxis merge, чтобы он был моим инструментом git diff / merge, поэтому, если я сделаю git difftool, он автоматически запустит araxis merge.

Однако, если я делаю git difftool upstream/master (чтобы увидеть все различия между текущей веткой и upstream/master), он запускает приложение по одному для каждого отдельного файла, который отличается. Есть ли способ настроить его, чтобы я мог получить представление типа сравнения папок, а затем перейти вниз и просмотреть каждый файл diff по своему выбору? т.е. похоже на это http://www.araxis.com/merge_mac/overview2.html

Единственный способ сделать это - клонировать репо в новую папку, переключиться туда и затем выполнить обычное сравнение папок слияния в araxis.

1 ответ

Решение

Я не знаю, если это все еще интересно для вас, но последние версии Araxis предоставляют прямой доступ к репозиториям Git:

http://www.araxis.com/merge/topic_plugin_git.html

Итак, если вы хотите запустить Araxis для сравнения вашего мастера с origin / master, вы сможете сделать это, используя

git log -1 origin/master

получить последний коммит в origin / master (скажем 123456ab, Затем откройте Araxis и используйте папку с рабочей копией как одну из сторон сравнения (/path/to/repo), Другая сторона должна быть установлена ​​в

git:///path/to/repo#123456ab

Затем Araxis сравнит ваш туалет с origin/master,

Это не особенно удовлетворительный ответ, но единственный способ, который я нашел, - это заставить difftool скопировать файлы во временную папку перед выполнением diff:

git difftool -d master

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

Другие вопросы по тегам