Исследовать вывод git-diff в графическом интерфейсе? - PullRequest
9 голосов
/ 12 ноября 2010

Существует ли программа, позволяющая исследовать вывод команды git-diff в графическом интерфейсе?

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

Я не уверен, можно ли заставить SmartGit отображать вывод команды "git diff".

alt text

Ответы [ 7 ]

10 голосов
/ 29 ноября 2010

Начиная с git v1.7.11, вы можете использовать git difftool --dir-diff для выполнения различий в каталогах.

Следующий ответ относится к установкам git старше v1.7.11.


Как уже упоминалось, git difftool может использоваться для открытия вашего различий в графическом интерфейсе.Однако, если у вас есть несколько файлов с изменениями, он откроет отдельный экземпляр GUI для каждого файла.

Я написал скрипт для обхода этой «функции» и разрешил открывать все файлы в одномЭкземпляр GUI.Вы можете найти скрипт git diffall на GitHub .

Также вас может заинтересовать этот связанный вопрос SO:

git difftool, откройте все diffфайлы сразу, а не в серийном

1 голос
/ 03 апреля 2019

Beyond Compare делает это хорошо - никаких изменений конфигурации не требуется для базовой команды 'git diff', которая создает файл .diff. Beyond Compare показывает все файлы, на которые есть ссылки в файле .diff в виде дерева файлов, и diff для каждого файла при его выборе.

В Beyond Compare используйте пункт меню «Инструменты -> Просмотреть патч»

1 голос
/ 29 ноября 2010

Я не уверен, что правильно понял ваш вопрос, но, по-видимому, в следующей версии SmartGit ( 2.0, в настоящее время доступна в формате альфа ), вы можете использовать окно журнала, чтобы делать различия между произвольными фиксирует - хотя я еще не пробовал.

1 голос
/ 13 ноября 2010

git difftool будет запускать все популярные, такие как meld, tkdiff и т. Д. Также для слияний вы можете запустить git mergetool.

1 голос
/ 12 ноября 2010

git diff имеет опцию --ext-diff, которая направляет вывод diff во внешнюю программу diff. Популярные программы с открытым исходным кодом, которые работают с Git, включают kdiff3 и Meld .

0 голосов
/ 29 августа 2018

Я знаю, что вы ищете GUI, а не TUI, но vi / vim / vimdiff отобразит файл diff с подсветкой синтаксиса: view changes.diff, где changes.diff было создано с помощью git --no-pager diff > changes.diff. Я искал повсюду GUI, который будет читать один из этих файлов, но безрезультатно - у meld есть опция --comparison-file=COMPARISON_FILE, но, какой бы ни был формат файла сравнения, он не работает с обычным ( унифицированный) разностный выход.

0 голосов
/ 18 июня 2012

Обратите внимание, что теперь вы можете ( git 1.7.11 , июнь 2012) каталоги diff (т.е. отображать все файлы для сравнения перед открытием difftool, вместо того, чтобы один раз запускать экземпляр внешнего инструмента) за пару файлов.)

См. "git difftool, чтобы сравнить каталог? "

...