Jump to content
ivanz

Git auto-merge doesn't seem to be using Semantic Merge

Recommended Posts

Just installed and configured Semantic Merge both in .gitconfig as the default merge and diff tool, but it doesn't seem to be working for me.

 

The Git GUI client (SmartGit) I am using is invoking git merge in a rebase scenario like this:

 

$ git.exe merge-recursive 02b45fc5f223d1c064fa005d7afb4f0ae2c994c0^ -- 07d63759f95b7e0917e6d405ecb010148856586d 02b45fc5f223d1c064fa005d7afb4f0ae2c994c0
 
and that doesn't seem to trigger Semantic Merge at all, since I end up with 2 C# file conflicted which when I open for conflict resolving get auto-merged (no conflicts) by Semantic Merge, so I just literally need to click on Save and that's it.
 
Here is my git config (I used your configuration docs). My git version is :
 

 

$ git --version

git version 1.8.4.msysgit.0

 

 

 

[diff]

tool = semanticdiff
 
[difftool "semanticdiff"]
cmd = C:/Users/Ivan/AppData/Local/PlasticSCM4/semanticmerge/semanticmergetool.exe -s \"$LOCAL\" -d \"$REMOTE\"
[difftool]
prompt = false
 
[merge]
tool = semanticmerge
 
[mergetool "semanticmerge"]
cmd = C:/Users/Ivan/AppData/Local/PlasticSCM4/semanticmerge/semanticmergetool.exe -d \"$LOCAL\" -s \"$REMOTE\" -b \"$BASE\" -r \"$MERGED\"
trustExitCode = true
 
[mergetool]
prompt = false
keepBackup = false

 

Auto-merging ####/$$$$.cs
CONFLICT (content): Merge conflict in ####/$$$$.cs

 

 

P.S: Also Semantic Merge is soooo slow to start-up here every time I have to trigger it (as external tool)

Share this post


Link to post
Share on other sites

I mean,

In the Preferences panel, under Tools > Conflict Solver make sure External Conflict Solver is selected.

??

Share this post


Link to post
Share on other sites

Maybe I am misunderstanding something though. When configured in .gitconfig isn't SemanticMerge supposed to replace the default merge functionality and use semantic for C#/Java files, so that I end up with less conflicts and then I can use the GUI Tool for manual resolve where the SemanticMerge can't auto-resolve? 

Share this post


Link to post
Share on other sites

Hi,

 

yes, it should start semantic merge so the conflicts will be easier to resolve, even automatic.

 

I've just tested SmartGit and works for me just overriding the Built-in diff and merge tool by semantic merge. I didn't modify the git config.

 

Can you double check if the path is correctly specified... or if the SmartGit tool has access to it...

Can you restore the original git config and test it like I do?

Does your SmartGit installation work with another mergetool than the default built-in tool?

Share this post


Link to post
Share on other sites

Hi,

 

yes, it should start semantic merge so the conflicts will be easier to resolve, even automatic.

 

I've just tested SmartGit and works for me just overriding the Built-in diff and merge tool by semantic merge. I didn't modify the git config.

 

Can you double check if the path is correctly specified... or if the SmartGit tool has access to it...

Can you restore the original git config and test it like I do?

Does your SmartGit installation work with another mergetool than the default built-in tool?

 

Semantic Merge  starts when I double click on a conflicted file in SmartGit. That's cool, but I want it to also be used in the git pipeline during its own auto-merge to avoid the conflict in the first place (e.g. Semantic Merge can auto-resolve conflicts that normal text-merge can't). Is that possible?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...