Config: получить данные git и объединить их с git mergetool
Я успешно настроил Kaleidoscope в качестве моего git difftool по умолчанию и работает как шарм. Но когда я делаю выборку, затем git difftool, я вижу, что изменилось, но я не могу выбрать или объединить то, что я хочу (по крайней мере, не через Kaleidoscope).
Теперь я хочу настроить File Merge (приложение Merge в комплекте с XCode) в качестве моего инструмента слияния, чтобы я мог получить, посмотреть, что изменилось, и выбрать, что объединить.
Это возможно? Если так, как я могу настроить это?
Заранее извиняюсь за нубистский вопрос.
1 ответ
Я использую приложение SourceGear DiffMerge для слияния. Это намного лучше, чем opendiff (инструмент слияния Xcode), и это моя рекомендация для вас. Вы можете использовать приведенные ниже принципы для настройки opendiff вместо этого, если вы действительно этого хотите, но он гораздо менее мощный, чем DiffMerge.
Мой глобальный конфигурационный файл git содержит:
[mergetool "diffmerge"]
cmd = "diffmerge --merge --result=\"$MERGED\" \"$LOCAL\" \"$(if test -f \"$BASE\"; then echo \"$BASE\"; else echo \"$LOCAL\"; fi)\" \"$REMOTE\""
trustExitCode = false
[merge]
tool = diffmerge
Итак, теперь, когда нужно выполнить слияния, я говорю "git mergetool", и он предложит мне запустить DiffMerge для каждого файла, который нужно объединить. Я могу выбрать один из параметров файла, сохранить его в разрешенном файле и перейти. Это очень приятно.