git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Reference for quote "creating branch is not the issue, merging is", in context of Subversion/Git

From
Jakub Narębski <jnareb@gmail.com>
Date
Feb 27, 2017, 22:42 UTC
Message-ID
<a3960248-46c1-b814-13ef-cf8c0435be9a@gmail.com>
In-Reply-To
<32232f89-a6f8-be30-278a-bdfedae0716a@gmail.com>
W dniu 26.02.2017 o 16:19, Igor Djordjevic pisze:
Show 33 quoted lines
> Hello Michael,
> 
> On 26/02/2017 12:40, Michael Hüttermann wrote:
>> Linus Torvalds made a statement regarding merging/branching and stated
>> (as far as I know) that "creating branch is not the issue, merge is", in
>> context of Subversion/Git.
>> I do not find the origin source for that. Can you please help and point
>> me to a statement or article where Linus elaborated on this?
> 
> Could it be that you think of "Tech Talk: Linus Torvalds on Git"[1]
> (held on May 3, 2007)?
> 
> To give you some clue, here`s an excerpt from Linus' talk/presentation
> (taken from the transcript[2] containing the whole thing):
> 
>   "... Subversion for example, talks very loudly about how they do CVS
>   right by making branching really cheap. It's probably on their main
>   webpage where they probably say branching in subversion is O(1)
>   operation, you can do as many cheap branches as you want. Nevermind
>   that O(1) is actually with pretty large O I think, but even if it
>   takes a millionth of a second to do branching, who cares? It's the
>   wrong thing you are measuring. Nobody is interested in branching,
>   branches are completely useless unless you merge them, and CVS cannot
>   merge anything at all. You can merge things once, but because CVS
>   then forgets what you did, you can never ever merge anything again
>   without getting horrible horrible conflicts. Merging in subversion is
>   a complete disaster. The subversion people kind of acknowledge this
>   and they have a plan, and their plan sucks too. It is incredible how
>   stupid these people are. They've been looking at the wrong problem
>   all the time. Branching is not the issue, merging is..."
> 
> This specific branch/merge performance talk starts at 50:20[3], where
> the part quoted above comes at 51:34[4].

Note also that while "creating branch is not the issue, merge is" remains true, modern Subversion (post 1.5) makes merging easy thanks to svn:mergeinfo property.

Though it does it in completely different way than Git and other "graph of commits" VCS-es, because of the "branch is directory" philosophy, namely that it keeps information about what was merged in, rather than finding common ancestor(s) and using this information for resolving merge.

Show 13 quoted lines
> 
> Please note that there`s more context before and after this excerpt
> that puts it all into the meant perspective, so you may really want
> to watch/listen/read the whole thing anyway.
> 
> Regards,
> Buga
> 
> [1] https://www.youtube.com/watch?v=4XpnKHJAok8
> [2] https://git.wiki.kernel.org/index.php/LinusTalk200705Transcript
> [3] https://youtu.be/4XpnKHJAok8?t=3020
> [4] https://youtu.be/4XpnKHJAok8?t=3094
> 
Previous: Igor Djordjevic
Message 3 of 3 in “Reference for quote "creating branch is not the issue, merging is", in context of Subversion/Git”
  1. Michael HüttermannFeb 26, 2017
  2. Igor DjordjevicFeb 26, 2017
  3. Jakub NarębskiFeb 27, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.