I’m attempting to use mergetool in Unreal. I’ve set the “Tool for diffing text” to be mergetool, and it finds the exe. However, when I attempt to diff in engine, it says “Soure filename is needed”. After reading Unreal’s source code, I’m guessing this is because mergetool expects every argument to be a named parameter (-s mySource.cpp), while Unreal expects the diff process to just take in the two filenames as the first.
Is there a work around for this? How can I make mergetool work in Unreal?
Hi,
According to the Unreal Plugin readme, text diff for assets is set up as follows…
Text Diff of any assets
To configure a text diff for any uasset (not only Blueprints) use this command instead
“C:\Program Files\Epic Games\UE_5.0\Engine\Binaries\Win64\UnrealEditor-Cmd.exe” “C:\wkspaces\ProjectName\ProjectName.uproject” -NoShaderCompile -run=“DiffAssets” %1 %2 DiffCmd=“C:\Program Files\PlasticSCM5\client\mergetool.exe {1} {2}”
Hope this helps!
Hey @NickWinters , I think that what you are seing is perhaps a change in behavior of the “mergetool.exe”.
I configured it in the Unreal Editor like you I suppose and got the same error:
But even the instructions from the README above doesn’t work, like you stated, missing the -s and -d flags
I and Ollie are going to reach out to the devs.
Sébastien
edit: the other alternative is that the doc of the plugin is wrong in the first place, in which case it’s not a regression but more of a missing feature