-->

SourceTree filemerge quits immediately and creates

2019-04-08 00:56发布

问题:

yesterday I could merge files in sourcetree with the external tool filemerge. Today, sourcetree wanted me to register me, and after my successful registration, I couldnt start filemerge.

When I choose "Launch external diff tool" from the contextmenu of a file, 4 files appear (Backup, base, local and remote) but filemerge quits immediately.

When I launch external diff, filemerge displays in the left /dev/null as source. How can I fix it? In preferences I choose filemerge as external diff tool. Have I to write the diff command for source tree manually, to give it the right local version of my file? How can I do it?

Thanks

回答1:

I solved the problem.

If you have a merge conflict with a file that doesnt exist in one of the branches, filemerge quits immediately.



回答2:

I had the same problem with SourceTree where I tried to use "open in external merge tool". The FileMerge app exited immediately.

I did not have the merge conflict in a file that had been deleted one place or another, but in a single file that just changed.

I could not find the root cause but could work around using the command line:

git mergetool

This opened FileMerge just fine and I could resolved the conflict in FileMerge, save, quit, back to SourceTree, refresh, and the conflict was resolved.



回答3:

I had the same problem, using Git, SourceTree and OpenDiff.

The problem comes from a delete/modify conflict.

In my case I deleted a file in a feature branch, while a team mate modified the file in the developer branch, leaving just one file I could not diff.

You have to choose between rejecting the file, thus loosing the changes made by your team mate, or accept the file. You can also log the modified file on the other branch with just git log <branch> <path> to see its changes