首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Beyond Compare as a Diff tool with Git - How to command line switch like: /expandall

Beyond Compare as a Diff tool with Git - How to command line switch like: /expandall
EN

Stack Overflow用户
提问于 2013-04-08 15:47:10
回答 1查看 7K关注 0票数 4

我的git全局配置C:\Users.gitconfig如下所示:

代码语言:javascript
复制
[diff]
tool = bc3

[difftool "bc3"]
path = C:/Program Files (x86)/Beyond Compare 3/BCompare.exe
cmd = \"C:/Program Files (x86)/Beyond Compare 3/BCompare.exe\" \"$LOCAL\" \"$REMOTE\"

我使用的是Windows7 x64操作系统。我有超越比较专业3.3.5版本。

我想在调用BCompare.exe时传递一个或多个参数我试过了,但不起作用:

代码语言:javascript
复制
cmd = \"C:/Program Files (x86)/Beyond Compare 3/BCompare.exe\ /expandall" \"$LOCAL\" \"$REMOTE\"

git difftool --dir-diff dev master

我想在dev和master分支之间做一个目录比较,并在Beyond compare工具中展开所有文件夹。这应该与Beyond Compare GUI: Expand All中的相应按钮的功能相同,该按钮将展开左右窗格中的所有文件夹。

我可能需要传递两个参数: /solo /expandall

谢谢,Rad

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-22 15:07:05

使用表单-expandall而不是/expandall,并注意-solo所需的(下面的解释)。

代码语言:javascript
复制
[diff]
    tool = bc3
[difftool "bc3"]
    cmd = \"E:/PortApps/Beyond Compare 3/bcomp.exe\" -expandall -solo \"$LOCAL\" \"$REMOTE\"

在Windows XP SP3 (x86 32位)上,以上方法适用于Beyond Compare 3.3.8 (标准版)和Git for Windows1.8.4 (msysgit)。

备注

根据BC tech support的说法,

  1. 我发现如果我提供的cmd.
  2. You可能需要使用BCompare.exe而不是bcomp.exe,那么path设置是不必要的。但我发现这两种方式都运行得很好。

Solo解释

-solo选项使比较在新窗口中打开。然后,difftool将等待您将其关闭,然后再删除要比较的临时文件。

如果没有此选项,则如果您已经打开了一个超越比较窗口,则比较将显示在该窗口的新选项卡中。这看起来很方便,但实际上并不起作用,因为difftool将立即删除要比较的文件,因为您对bcomp.exe的调用只是将任务委托给已经运行的应用程序,然后退出。

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15873874

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档