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

Re: Merging in Subversion 1.5

From
Jakub Narebski <jnareb@gmail.com>
Date
Aug 28, 2009, 16:19 UTC
Message-ID
<200908281819.10135.jnareb@gmail.com>
In-Reply-To
<32541b130908280829s6fcebbe5ja84b10e649de1eb3@mail.gmail.com>
On Fri, 28 Aug 2009, Avery Pennarun wrote:
> On Fri, Aug 28, 2009 at 3:12 PM, Jakub Narebski<jnareb@gmail.com> wrote:
Show 10 quoted lines
> > From what I understand (from what I have read, and browsed, and
> > lurged, and noticed) is that Subversion 1.5+ does merge tracking, but
> > in very different way that in Git:
> >
> >  * the svn:mergeinfo is client-side property; if I understand
> >   correctly this would help you in repeated merges, but not anyone
> >   other
> 
> I don't believe there is such a thing as a "client-side property" in
> svn.
What about svn:ignore or svn:mimetype (IIRC) property?
> I see someone said this on stackoverflow 
> (http://stackoverflow.com/questions/1156698/are-svn-merges-idempotent)
> but I'm pretty sure they were either mistaken or using a different
> definition of "client-side."
I think I got this (wrong?) impression from there.
Show 18 quoted lines
> >  * svn:mergeinfo contains _per-file_ merge info, so it is much, much
> >   more "chatty" than Git multiple parents.  This might be more
> >   powerfull approach, in the same sense that more advanced merge
> >   strategies that 3-way merge were more powerfull -- but 3-way merge
> >   is best because it is simple (and either it is simple that 3-way
> >   merge is enough, or complicated so manual intervention is required).
> 
> svn people really love their cherry-picks and want to keep track of
> which things get cherry picked from one branch to another.  This is
> nice (at least for informational purposes) although they go through
> some probably-unnecessary contortions *after* doing this, including
> splitting a merge from "maint" into "master" into two sequential
> merges, if you've previously cherry-picked a commit from master into
> maint.  The above svn book link describes this in a bit more detail.
> 
> I don't think that behaviour would be much help in any situation I've
> ever experienced, so I agree with your comment that 3-way merge is
> generally better.
Errr... what I meant here that I have read (on some blog, but either
I didn't bookmark it, or I can't find the bookmark) that svn:mergeinfo
is not as simple as listing _revisions_ which are merged (i.e. either
all parents, or additional parent), but it lists per-file merge 
information, and can be quite large.
 
> >  * You have to explicitely enable using svn:mergeinfo in log and blame
> 
> Conversely, in git you can basically disable it using --first-parent,
> which is sometimes handy. [...]
In git-log.  But in git-blame?
-- 
Jakub Narebski
Poland
Previous: Matthias AndreeNext: Matthias Andree
Message 12 of 23 in “Using git to track my PhD thesis, couple of questions”
  1. seanhAug 27, 2009
  2. Sverre RabbelierAug 27, 2009
  3. Matthieu MoyAug 27, 2009
  4. Paolo BonziniAug 28, 2009
  5. Matthieu MoyAug 28, 2009
  6. seanhAug 28, 2009
  7. Matthieu MoyAug 28, 2009
  8. Matthias AndreeAug 28, 2009
  9. Merging in Subversion 1.5 (was: Re: Using git to track my PhD thesis, couple of questions)Jakub Narebski, Aug 28, 2009
  10. Avery PennarunAug 28, 2009
  11. Matthias AndreeAug 28, 2009
  12. Jakub NarebskiAug 28, 2009
  13. Matthias AndreeAug 28, 2009
  14. Avery PennarunAug 28, 2009
  15. Sam VilainAug 30, 2009
  16. Dmitry PotapovAug 31, 2009
  17. david@lang.hmAug 28, 2009
  18. Paolo BonziniAug 28, 2009
  19. demerphqAug 28, 2009
  20. david@lang.hmAug 28, 2009
  21. demerphqAug 28, 2009
  22. Junio C HamanoAug 27, 2009
  23. demerphqAug 27, 2009

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.