如何让 KDiff3 在没有 UI 的情况下自动合并?

spo*_*yno 5 kdiff3 merge-conflict-resolution git-merge-conflict

如何让 KDiff3 自动进行三向合并,使其不显示 UI?理想情况下,如果成功,则返回成功,如果不能(需要手动合并),则返回错误代码。

我读过的所有内容似乎都暗示以下内容应该有效:

"c:\Program Files\KDiff3\kdiff3.exe" --auto base.txt src.txt tar.txt -o merge.txt
Run Code Online (Sandbox Code Playgroud)

然而,事实并非如此。当我运行它时,会弹出一个消息框,上面写着:

Total number of conflicts: 3
Nr of automatically solved conflicts: 3
Nr of unsolved conflicts: 0
Run Code Online (Sandbox Code Playgroud)

我如何让它在没有这个弹出窗口的情况下运行,如果失败,根本没有 GUI?

spo*_*yno 5

我想到了。我需要在命令行中添加“--cs”和“ShowInfoDialogs=0”。所以这:

"c:\Program Files\KDiff3\kdiff3.exe" --auto base.txt src.txt tar.txt -o merge.txt
Run Code Online (Sandbox Code Playgroud)

...变成这样:

"c:\Program Files\KDiff3\kdiff3.exe" --auto base.txt src.txt tar.txt -o merge.txt --cs "ShowInfoDialogs=0"
Run Code Online (Sandbox Code Playgroud)

......现在它起作用了。