It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

P4Merge diff doesn't show up

Hi, this is Minku.

I have downloaded P4Merge and SourceTree 3.0.17.2659 on my 64-bit Windows 10 laptop.

diff.pngdiff config.pngThe W looking thing is a WON currency. It is shown like this because I'm using a Korean-based laptop.

https://superuser.com/questions/787664/why-are-backslashes-displayed-as-%E2%82%A9-korean-won-sign-w-strikethrough-in-not

 

However, after I click the "external diff", nothing happened.

How can I launch P4Merge and compare files?

-Thanks for the help, MInku

2 answers

0 votes
Mike Corsaro Atlassian Team Mar 04, 2019

Hello! Could you post a part of your ".git" config file for me? You can find it under "C:\Users\USERNAME_HERE\.git"

 

Please post the part under "[difftool "sourcetree"]"

 

Thanks!

Hi, Mike.

config.png

[difftool "sourcetree"]
cmd = 'C:/Program Files/Perforce/p4merge.exe' \"$LOCAL\" \"$REMOTE\"
[mergetool "sourcetree"]
cmd = 'C:/Program Files/Perforce/p4merge.exe' \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"
trustExitCode = true

When I opened it, it was shown like the above picture.

But still, P4Merge doesn't show up when I choose "External Diff".

0 votes
minnsey Atlassian Team Mar 04, 2019

Hi

It is possible this is a bug, we have a fixed some in this area in the upcoming 3.1, but can you check the contents of your git config, it should look like

difftool.sourcetree.cmd='C:/Program Files/Perforce/p4merge.exe' "$LOCAL" "$REMOTE"
mergetool.sourcetree.cmd='C:/Program Files/Perforce/p4merge.exe' "$BASE" "$LOCAL" "$REMOTE" "$MERGED"
mergetool.sourcetree.trustexitcode=true

Also in the Tools/Options/Diff tab I would expect to see the  path to the P4 .exe

Hi, Michael. I'm using P4Merge and SourceTree 3.0.17.2659 on my 64-bit Windows 10 laptop.

Mine is configured as

 

[difftool "sourcetree"]
cmd = 'C:/Program Files/Perforce/p4merge.exe' \"$LOCAL\" \"$REMOTE\"
[mergetool "sourcetree"]
cmd = 'C:/Program Files/Perforce/p4merge.exe' \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"
trustExitCode = true

 

But still, P4Merge doesn't show up when I choose "External Diff".

I wish to get your help.

minnsey Atlassian Team Mar 05, 2019

That looks correct.

Is there anything in the Event Viewer or %localappdata%/Atlassian/Sourcetree/Sourcetree.log indicating an error?

Also if you try installing an alternative like kdiff3 and configuring that does it start working?

 

Hi, Michael

"Also if you try installing an alternative like kdiff3 and configuring that does it start working?"

I installed the KDiff3 64-bit. This works when I press Ctrl+D.

Kdiff3.png

Here's what I found. My Scenario: 

s1-1.png

Set the Diff tool to KDiff3. Then execute Ctrl+D and we will see it is working.

The KDiff3 really pops up fast that it didn't took a second. I'm testing this with a laptop that has i3 processor and SSD, BTW.

Now go back to settings and choose P4Merge.

s1-2.png

Surprisingly, compared to the case when I choose KDiff3, if I choose P4Merge, it shows a blank on the Diff Command. Anyways, I pressed Okay.

NOW, when I press Ctrl+D, P4Merge pops up.

But it took like 3.5 seconds and I noticed the green progress bar. This bar doesn't always appear after pressing Ctrl+D.

 

So I thought everything was solved. However, after I turn off SourceTree and run it again, P4Merge doesn't show up when I press Ctrl+D.

 

In contrast, when I have a merge conflict, P4Merge does pop up when I try to solve the conflict with the external diff tool. 

 

Can you guys try this as well and see if this is re-generatable on your side?

 

-Thanks

minnsey Atlassian Team Mar 11, 2019

Thanks for the additional details.

A couple of notes.

When you change diff/merge tool the path will initially be empty it gets set when you close the preferences, so that is OK.

Are you using Git or Mercurial? We are aware of some issues with Mercurial and external diff/merge tools which are fixed in the upcoming 3.1 release.

Are you using Git or Mercurial?

Hi, Michael. I’m using Git only. In detail, I tried this when I used SourceTree’s embedded Git/downloaded Git manually.

GitVersion.png

Both cases made the same aforementioned result.

i haven’t installed Mercurial. 

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Sourcetree

Sourcetree for Windows - CVE-2019-11582 - Remote Code Execution vulnerability

A vulnerability has been published today in regards to Sourcetree for Windows.  The goal of this article is to give you a summary of information we have gathered from Atlassian Community as a st...

4,989 views 0 12
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you