[Svnmerge] Missing metainfo when using merge -M or block

Blair Zajac blair at orcaware.com
Tue Aug 2 11:50:56 PDT 2011


On Aug 2, 2011, at 11:44 AM, Jeppe_Oland at playstation.sony.com wrote:

> > I think you should pick svnmerge.py or built-in merge tracking. 
> > At this point, I recommend svn's built-in merge tracking, the only 
> > thing it doesn't have is a nice way of blocking revisions from merging.
> 
> Does the built-in merge mechanism preserve any revision comments? 
> 
> Or I guess to ask another way ... when I merge changes with "svn merge", the commit comment is purely decided by me. 
> How does a third party easily see what revisions I merged, and the commit logs for those revisions? 

svn built-in merging doesn't do that because you can get with log's -g command line option the log messages of what was merged.  This is better in some way because if you fix the original log message, say a typo, then you only need to fix it once.  With svnmerge.py, I've had to tweak three log messages because the text was copied from revision to revision.

Here's a merge from svn's own trunk into the 1.7.x branch.  Without -g:

$ svn log -r r1152771 https://svn.apache.org/repos/asf/subversion/branches/1.7.x
------------------------------------------------------------------------
r1152771 | hwright | 2011-08-01 06:36:15 -0700 (Mon, 01 Aug 2011) | 11 lines

Merge r1149539 from trunk:

 * r1149539
   Resolve issue #3969: provide proper cancellation support in the
   network loops in ra_serf.
   Justifications:
     GUI clients can't rely on EINTR being returned when a user tries to cancel
     an operation, as no signal is raised.
   Votes:
     +1: rhuijben, hwright, cmpilato

------------------------------------------------------------------------




Add -g and you see the log message on the revision that was merged:



$ svn log -g -r r1152771 https://svn.apache.org/repos/asf/subversion/branches/1.7.x

------------------------------------------------------------------------
r1152771 | hwright | 2011-08-01 06:36:15 -0700 (Mon, 01 Aug 2011) | 11 lines

Merge r1149539 from trunk:

 * r1149539
   Resolve issue #3969: provide proper cancellation support in the
   network loops in ra_serf.
   Justifications:
     GUI clients can't rely on EINTR being returned when a user tries to cancel
     an operation, as no signal is raised.
   Votes:
     +1: rhuijben, hwright, cmpilato

------------------------------------------------------------------------
r1149539 | rhuijben | 2011-07-22 03:01:14 -0700 (Fri, 22 Jul 2011) | 21 lines
Merged via: r1152771

Resolve issue #3969: provide proper cancellation support in the network loops
in ra_serf.

* subversion/libsvn_ra_serf/ra_serf.h
  (svn_ra_serf__session_t): Rename two variables and add two new variables.
    Progress has nothing to do with the wc and this make it easier to access
    the cancellation.

* subversion/libsvn_ra_serf/replay.c
  (svn_ra_serf__replay_range): Check for cancellation.

* subversion/libsvn_ra_serf/serf.c
  (svn_ra_serf__progress): Update user.
  (svn_ra_serf__open): Update session initialization.

* subversion/libsvn_ra_serf/update.c
  (finish_report): Check for cancellation.

* subversion/libsvn_ra_serf/util.c
  (svn_ra_serf__context_run_wait): Use callback in session.

------------------------------------------------------------------------

Blair




More information about the Svnmerge mailing list