Как использовать Калейдоскоп 2 с башней Git?
Публичная бета-версия Kaleidoscope 2 была выпущена на этой неделе и получила функциональность слияния. Ура! Однако использование командной строки несколько расплывчато относительно использования. Я хочу использовать Kaleidoscope вместе с Git Tower, как я могу это сделать?
$ ksdiff --help
usage: ksdiff - send files to Kaleidoscope
command options:
[--wait, -w | --no-wait] whether to wait for the document to be
closed in Kaleidoscope before exiting
FILE options:
[--snapshot | --no-snapshot] whether the file is temporary. this
option will override the heuristics
ksdiff would otherwise use to determine
this state.
commands:
--merge send a merge
implies --wait
--output OUTPUT use OUTPUT as the destination path for
this merge. creates OUTPUT if it does
not exist.
[--base BASE] use BASE as the base content for this
merge. can improve the quality of the
default selections for some merges.
FILE FILE the files to merge
Поддержка документов для внешних инструментов слияния из Git Башня
Ответы
Ответ 1
Обновление с Git Башня 1.4.14
Git Башня (версия 1.4.14 и выше) теперь поставляется с интеграцией Kaleidoscope 2. Сценарии запуска, показанные ниже, больше не должны использоваться, так как они не работают корректно с окончательной версией Kaleidoscope 2.
Калейдоскоп обеспечивает правильное использование командной строки при выборе Integration > Git merge. Правильная пусковая установка script для Git Tower выглядит так:
~/Library/Поддержка приложений /Tower/CompareScripts/kaleidoscope 2.sh
#!/bin/sh
LOCAL="$1"
REMOTE="$2"
BASE="$3"
MERGED="$4"
APPLICATION_PATH=/Applications/Kaleidoscope.app
CMD="$APPLICATION_PATH/Contents/MacOS/ksdiff"
"$CMD" --merge --output "$MERGED" --base "$BASE" -- "$LOCAL" --snapshot "$REMOTE" --snapshot
~/Library/Поддержка приложений/Башня/CompareTools.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>ApplicationIdentifier</key>
<string>com.blackpixel.kaleidoscope</string>
<key>ApplicationName</key>
<string>Kaleidoscope</string>
<key>DisplayName</key>
<string>Kaleidoscope</string>
<key>LaunchScript</key>
<string>kaleidoscope2.sh</string>
<key>Identifier</key>
<string>kaleidoscope2</string>
<key>SupportsMergeTool</key>
<true/>
</dict>
</array>
</plist>
Ответ 2
Если вы используете версию Kaleidoscope MAS, вы должны установить инструмент ksdiff вручную, чтобы Tower мог запускать Kaleidoscope.
Загрузите его здесь http://www.kaleidoscopeapp.com/ksdiff2
Ответ 3
Недопустимая ссылка для меня: http://www.kaleidoscopeapp.com/ksdiff2 и установка инструментов командной строки Kaleidosope (ksdiff), в настоящее время моя "Подробнее" в интеграции "Калейдоскоп".. "не связано, поэтому я надеюсь, что это поможет кому-то еще, кто, возможно, не увенчался успехом. Другой возможный недостающий шаг - установка Утилиты командной строки Tower в" Tower > Preferences > Integration ", оттуда вы можете перейти на вкладку" Git Config "и выбрать" Калейдоскоп" в качестве инструмента Diff/Merge Tool.
Ответ 4
Наша последняя версия (версия 1.4.14) Tower теперь официально поддерживает Kaleidoscope 2 как MergeTool. Теперь вы можете загрузить его с веб-сайта Tower.
Ответ 5
Если вы добавили.sh и изменения в .plist, вы должны удалить их, если обновите Tower до 1.4.14 или выше, или же Kaleidoscope выиграл Запуск. Я добавил изменения вручную, и у меня есть версия Tower 1.4.15, и Kaleidoscope не захотел запускаться, пока я не удалю изменения.
У меня также есть версия MAS для Kaleidoscope 2.0 и установлен инструмент ksdiff.