如何在cygwin中使用git mergetool中的BeyondCompare?

时间:2010-09-03 21:49:01

标签: git merge cygwin beyondcompare mergetool

如何在cygwin中使用“git mergetool”中的BeyondCompare?

2 个答案:

答案 0 :(得分:3)

这是一个简单的答案。

#! /bin/sh
LOCAL=`cygpath -wa $1`
REMOTE=`cygpath -wa $2`
BASE=`cygpath -wa $3`
MERGED=`cygpath -wa $4`
/cygdrive/c/BeyondCompare3/BComp.exe $LOCAL $THEIRS $BASE $MERGED

或者像你的git配置一样。

[mergetool "mergetool"]
    cmd = /cygdrive/c/BeyondCompare3/BComp.exe `cygpath -wa "$LOCAL"` `cygpath -wa "$REMOTE"` `cygpath -wa "$BASE"` `cygpath -wa "$MERGED"`

我使用cygpath(与cygwin一起提供)来转换路径。 -w标志从cygwin格式(从/ cygdrive / c开始)转换为windows格式(从c :)开始。 -a标志使用绝对文件名。

注意:我没有Pro BeyondCompare许可证,因此我无法正确测试合并,但它正确地打开了前两个文件。

答案 1 :(得分:2)

我找到了一些脚本来转换cygwin路径(看起来很健壮)并启动BC3: http://gist.github.com/564573