difference between remote local and base using p4merge

This video tutorial does a good job of explaining what each of these views mean:

4-pane merge tools show you these panes:

  • LOCAL – your file with the changes you’ve made to it
  • BASE – the common ancestor file that LOCAL and REMOTE came from
  • REMOTE – the file you’re merging in, possibly authored by someone else
  • MERGE_RESULT – the file resulting from the merge where you resolve conflicts

We could visualize the history of the file as follows:

remote: ... v1 -- v2 -- v3
                   \
local:              v4

Here v3 would be the REMOTE version of file, and v4 is the LOCAL version. The BASE is v2, and the MERGE_RESULT is the file which would result from merging the remote into the local file.


If you're using SourceTree you can see this. Which is what Tim suggested above. enter image description here


P -- B
 \
  A
git checkout A
git merge B    #merge B into A
  • local = A
  • remote = B
  • base = P

I would add that on a rebase, local and remote are reversed.

P -- B
 \
  A
git checkout A
git rebase B    #rebase A onto B
  • local = B
  • remote = A
  • base = P

Tags:

Git

Merge

P4Merge