Ayende @ Rahien

My name is Oren Eini
Founder of Hibernating Rhinos LTD and RavenDB.
You can reach me by phone or email:


+972 52-548-6969

, @ Q c

Posts: 6,131 | Comments: 45,568

filter by tags archive

Doing merges in git

time to read 1 min | 101 words

One of the things that some people fear in a distributed source control is that they might run into conflicts all the time.

My experience has shown that this isn’t the case, but even when it is, there isn’t really anything really scary about that.

Here is an example of a merge conflict in Git:


Double click the conflicting file, and you get the standard diff dialog. You can then resolve the conflict, and then you are done.



Did you notice that merging with git requires less work than with svn? This is what everyone says at least.


Merging with any of the major implementations of DVCS is easier and requires much less work than SVN or any other centralized VCS because the system inherently has more information at hand to perform the merge.


I'm surprised to see that dialog...you strike me a "git bash" type of guy. ;)

Ayende Rahien


Yes, git is keeping much more data, so it can handle it better


Tobi, I too see much less manual merging with git than svn/cvs. Funny, yhe only 2 projects where i've had to do a manual merge are FluentMigrator (my fault) and RavenDB (which was probably also my fault).

Jimmy Chan


Are you using tortoise for git?


What sort of data does git store that makes it much better at merging than SVN?

Ayende Rahien


Basically, it records each individual change, so it is able to do merge on each change independently, while SVN need to do merge between the final results.

Gian Maria

It would be interesting having more deep comparison between merging in DVCS and standard centralized system like svn. Is true indeed that git stores more information for merges than SVN, but usually I do merge in svn with no great pain.

Tortoise for svn show changes files, conflicted files, and I can open the diff from the tortoise windows, resolve the conflicts, check the merge and commit, basically I see the same windows you show with tortoise git.

Clearly svn only compare the actual state of the source and destination folder, but usually is enough for me.


Comment preview

Comments have been closed on this topic.


  1. RavenDB Conference 2016–Slides - 5 hours from now
  2. Proposed solution to the low level interview question - about one day from now

There are posts all the way to Jun 02, 2016


  1. The design of RavenDB 4.0 (14):
    26 May 2016 - The client side
  2. RavenDB 3.5 whirl wind tour (14):
    25 May 2016 - Got anything to declare, ya smuggler?
  3. Tasks for the new comer (2):
    15 Apr 2016 - Quartz.NET with RavenDB
  4. Code through the looking glass (5):
    18 Mar 2016 - And a linear search to rule them
  5. Find the bug (8):
    29 Feb 2016 - When you can't rely on your own identity
View all series



Main feed Feed Stats
Comments feed   Comments Feed Stats