![git difftool 的万花筒](https://linux22.com/image/1390124/git%20difftool%20%E7%9A%84%E4%B8%87%E8%8A%B1%E7%AD%92.png)
我尝试使用万花筒来git difftool
比较两个分支。
所以我安装了差分并将其设置为关注我的.gitconfig
[diff]
tool = kaleidoscope
[difftool "kaleidoscope"]
cmd = ksdiff --changeset $(cd $(dirname "$LOCAL") && pwd)/$(basename "$LOCAL") $(cd $(dirname "$MERGED") && pwd)/$(basename "$MERGED")
跑步时
git difftool myBranch otherBranch
我收到错误cannot use duplicate files within the same file list
答案1
我找到了一种配置它的方法。在 Kaleidoscope 本身中万花筒菜单上有一个名为一体化它打开多个版本解决方案的配置窗口。
安装后差分点击配置按钮将把以下行添加到您的.gitconfig
文件中。
[diff]
tool = Kaleidoscope
[difftool "Kaleidoscope"]
cmd = ksdiff --partial-changeset --relative-path \"$MERGED\" -- \"$LOCAL\" \"$REMOTE\"
[merge]
tool = Kaleidoscope
[mergetool "Kaleidoscope"]
cmd = ksdiff --merge --output \"$MERGED\" --base \"$BASE\" -- \"$LOCAL\" --snapshot \"$REMOTE\" --snapshot
trustExitCode = true
然后运行以下命令将依次打开每个不同的文件
git difftool myBranch otherBranch -y -t Kaleidoscope
--
笔记:
-y
代表避免提示我们是否要对每个文件使用 Kaleidoscope 进行 difftool。默认答案是“是”。-t Kaleidoscope
这里是可选的,因为我们的文件Kaleidoscope
中已经设置了默认的 difftool 。.gitconfig