首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何调试git命令( WinMerge,windows上的git )

如何调试git命令( WinMerge,windows上的git )
EN

Stack Overflow用户
提问于 2022-04-28 22:00:59
回答 1查看 103关注 0票数 0

我花了一些时间将git (git版本2.35.3.windows.1)配置为使用WinMerge (2.16.20)作为外部扩散工具。这个帖子是我的切入点,这个要旨似乎帮助了一些人。我这边还是没有运气。

代码语言:javascript
复制
$ git config --global --list
  ...
  diff.tool=winmerge
  difftool.winmerge.prompt=false
  difftool.winmerge.trustexitcode=true
  difftool.winmerge.cmd=.... (different versions see below)
--------------------------------------------------------------------------------
Example
cmd = "/c/Program\\ Files\\ \\(x86\\)/WinMerge/WinMergeU.exe" -u -e $LOCAL $REMOTE  
cmd = \"C:\\Program Files (x86)\\WinMerge\\WinMergeU.exe\" -u -e \"$LOCAL\" \"$REMOTE\"

问题1:帖子中,作者提到了git的2.5版本。但官方公布的2.36份回购名单是最新发布的。从2015年起,windows似乎发布了2.5版。这是实验性的吗?还是不正式?

问题2:能解释一下git difftool在做什么吗?有没有一种方法可以模拟git之外的调用,这样我就可以更好地调试它?也许有人也有这个问题,他可以解释他是如何调试这个问题的。

我没有错误信息(似乎被吞咽了.)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-29 02:25:24

在gitconfig中为Windows路径编写正确的空格、斜杠和反斜杠是一场噩梦。为了避免这种情况,将c:\Program Files (x86)\WinMerge添加到系统变量Path (google windows how to edit system variables)中,这样我们就可以直接在命令行的路径下调用可执行文件(在您的情况下是WinMergeU.exe),而不是它的绝对路径。

更新Path后,重新打开git以重新加载它。运行git config --global -e编辑difftool.winmerge.cmd

代码语言:javascript
复制
[difftool "winmerge"]
    cmd = WinMergeU.exe -u -e "$LOCAL" "$REMOTE"

要测试它是否有效,输入一个git存储库并运行git difftool HEAD^ HEAD。您可以尝试其他git diff命令,将git diff替换为git difftool

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

https://stackoverflow.com/questions/72050695

复制
相关文章

相似问题

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