如何在Git Tower中使用Kaleidoscope 2?

时间:2012-11-21 20:13:32

标签: git git-tower

Kaleidoscope 2公测版于本周发布,并获得了合并功能。好极了!但是,命令行使用对于使用情况有些模糊。我想和Git Tower一起使用Kaleidoscope,我该怎么做?

$ 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

Support docs for external merge tools from Git Tower

5 个答案:

答案 0 :(得分:10)

如果您使用的是MAS版Kaleidoscope,则必须手动安装ksdiff工具才能使Tower能够启动Kaleidoscope。

在此处下载http://www.kaleidoscopeapp.com/ksdiff2

答案 1 :(得分:8)

自Git Tower 1.4.14起更新

Git Tower(版本1.4.14及更高版本)现在附带Kaleidoscope 2集成。下面显示的启动器脚本不应再使用,因为它们无法与Kaleidoscope 2最终版本一起正常工作。


Kaleidoscope在Integration>时提供正确的命令行用法。选择Git合并。 Git Tower的正确启动器脚本如下所示:

〜/ Library / Application Support / Tower / CompareScripts / kaleidoscope2.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 / Application Support / Tower / 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 :(得分:8)

我缺少的链接是:http://www.kaleidoscopeapp.com/ksdiff2并安装Kaleidosope命令行工具(ksdiff),目前我的&#34;阅读更多&#34;按钮&#34; Kaleidoscope&gt;集成..&#34;是没有联系所以我希望这可以帮助其他可能不成功的人。另一个可能缺少的步骤是塔楼命令行实用程序安装在&#34; Tower&gt;偏好&gt;整合&#34;,从那里你可以去&#34; Git Config&#34;选项卡并选择Kaleidoscope作为差异/合并工具。

答案 3 :(得分:4)

Tower的最新版本(版本1.4.14)现在正式支持Kaleidoscope 2作为MergeTool。您现在可以从Tower Website下载。

答案 4 :(得分:0)

如果添加 .sh以及对.p列的更改,如果您将Tower升级到1.4.14或更高版本,则必须删除,否则Kaleidoscope赢了发射。我手动添加了更改,并且我有Tower版本1.4.15,并且在我删除更改之前Kaleidoscope不想启动。

我还有MAS版Kaleidoscope 2.0并安装了ksdiff工具。