Используйте Xcode 4 в качестве Git difftool - PullRequest
9 голосов
/ 16 ноября 2011

Я хочу использовать представление «Редактор версий» в Xcode 4 в качестве стандартного difftool для Git.

Другими словами, я хочу иметь возможность установить эту опцию:

git config --global diff.external <XCODE>

И откройте diff в средстве просмотра diff в Xcode (потому что это круто).

Возможно ли это?Как?

1 Ответ

6 голосов
/ 12 декабря 2011

К сожалению, это невозможно. Надеюсь, Apple когда-нибудь изменит это.

Полагаю, вы уже знаете следующее, но в интересах тех, кто не может этого сделать, вы можете использовать вместо этого приложение Apple FileMerge для аналогичного, хотя и несколько меньшего, опыта с такой командой:

git difftool path/to/file

Мой git по умолчанию использует FileMerge в качестве difftool, но вы можете настроить его явно с помощью:

git config --global diff.tool opendiff

(Это не позволяет git выводить список инструментов-кандидатов каждый раз.) Мне также нравится отключать приглашение git difftool перед запуском:

git config --global difftool.prompt false

Можно настроить git так, чтобы git diff также вызывал FileMerge или вместо него. (Я предпочитаю просто оставить git diff таким, какой он есть.) Если вы хотите, вам сначала нужно создать скрипт оболочки, чтобы сопоставить соответствующие аргументы с opendiff :

#!/bin/sh
/usr/bin/opendiff "$2" "$5" -merge "$1"

, а затем запустить

git config --global diff.external /path/to/shell/script
...