突然,当我尝试从Sourcetree启动“外部合并工具”时,该工具不会出现。我突然说,因为我上次尝试时效果很好。对话框永远存在:
最终我发现这个过程与视觉合并有关(不知道如何从Windows任务管理器复制命令行):
顺便说一下,当我按下中止时,这个过程并没有消失,所以有人可能没有完成他们的功课。实际上,如果这个命令行没有六个相同的进程,我可能不会注意到它。
这些是我的设置:
我该如何解决这个问题?我需要合并项目,我不知道该怎么做......
答案 0 :(得分:2)
我发现当其中一个要合并的文件已被删除时会发生这种情况。在这种情况下,git
打印出sourcetree无法处理的命令行提示符。然后git进程永远挂起。
处理此问题的最佳方法是终止挂起的git进程,然后使用我的/使用他们的手动进行选择。
答案 1 :(得分:0)
如果无法启动Sourcetree外部合并工具,可以使用:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
答案 2 :(得分:0)
除了Tomáš的答案外,您还可以在Windows的命令提示符中运行以下命令,以回答git-mergetool询问何时删除其中一个文件(甚至两个文件)的问题。
使用自己的CONFLICTED_FILE_PATH,您可能需要使用其他路径指向git-mergetool:
sh "c:\Program Files\Git\mingw64\libexec\git-core\git-mergetool" -y --tool=sourcetree -- CONFLICTED_FILE_PATH
答案 3 :(得分:0)
我的问题是我选择了工具本身,而不是工具的路径。这似乎是强制性的:
您还可以在“ .gitconfig”文件(位于用户目录中)中看到此内容:
之前
rc
之后
[difftool "sourcetree"]
cmd = '' \"$LOCAL\" \"$REMOTE\"
[mergetool "sourcetree"]
cmd = '' \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"
答案 4 :(得分:0)