Note that there are some explanatory texts on larger screens.

plurals
  1. POIs git's merge conflict resolution more efficient than other SCMs and merge tools?
    primarykey
    data
    text
    <p>Is <code>git</code>'s merge conflict resolution <em>inherently</em> more efficient than other SCMs (CVS,Subversion,etc.), and also standalone merge tools? If so, why?</p> <p>Clarification: <em>here</em> I'm more interested in the algorithm itself - is it any different from a plain diff3 method?<br> Some tools claim to be smarter in that(e.g. Guiffy), is it worth plugging one in as a git merge tool? Is git any smarter in figuring out pieces of text moved within or across files ? (rather than reporting noisy conflicts.. I had a vague impression of that from Linus' talk).</p> <p>Background: just did a huge merge using <code>git-svn</code> which resulted in half the conflicts than I got with plain <code>svn merge</code> (first merge with no tracking) .. so I'd like to understand why.</p> <hr> <p>The are similar Qs/As around but they are more about the big picture of the process, and how merging fits in that more naturally. To that end, <code>git</code> being 'optimised for merges' (as opposed to only branching), does it actually mean:</p> <ol> <li>less manual conflicts -- better auto-resolution algorithms (eg. renaming is handled nicely) </li> <li>safer operation -- auto-resolution leaves more/only real conflicts and less false alerts</li> <li>faster operation -- say, due to the lean &amp; mean object model</li> <li>better tooling -- which makes the experience less painful, e.g. DAG-based merge tracking, mergetool, history query/visualisation, stash, rebase,etc...</li> <li>something else</li> <li>a combination of the above</li> </ol> <p>? Now, I'm mostly interested in 1 &amp; 2.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload