[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Remaining Merge Tracking auditing features for 1.5

From: Daniel Rall <dlr_at_collab.net>
Date: 2007-07-03 02:36:02 CEST

Here's a strawman proposal for the most often requested features of
the "Change Set Merge Availability" and "Find Change Set" sub-sections
of the Merge Tracking requirements spec's "Auditing" section.
http://subversion.tigris.org/merge-tracking/requirements.html#auditing

For Subversion 1.5, the following new features will be added:
o Show Change Sets Available for Merge
o Merged From info for Change Set and/or Path
o Merged To info for Change Set and/or Path

While this functionality could be delivered by piggy-backing on
existing sub-commands ('svn log' and 'svn info' have been considered
at length), discussion leads me to believe that we might be better off
introducing a new sub-command to deliver these features:

  svn mergeinfo --available-from=URL TARGET[@REV]
  svn mergeinfo [-r ARG] [--merged-from | --merged-to] TARGET[@REV]

The output of "Change Set Merge Availability" will look like that of
'svn log'. The semantics will be slightly different, listing logs
from URL instead of from TARGET.

The output of "Find Change Set" will include merging revision, URL,
and range list:

  $ svn mergeinfo --merged-to /trunk
  At r14, merged r3-7, r13 from /branches/featureX to /trunk
  At r60, merged r30-57 from /branches/featureY to /trunk

  $ svn mergeinfo --merged-from /branches/featureX
  At r14, merged r3-7, r13 from /branches/featureX to /trunk

  $ svn mergeinfo --merged-to -r37
  At r60, merged r30-57 from /branches/featureY to /trunk

  $ svn mergeinfo --merged-from -r37
  At r60, merged r30-57 from /branches/featureY to /trunk

  $ svn mergeinfo --merged-to -r37 /trunk
  At r60, merged r30-57 from /branches/featureY to /trunk

  $ svn mergeinfo --merged-from -r37 /trunk

(Nothing was merged *from* /trunk in r37, only *to* it.)

The only other viable alternative would be to introduce multiple new
sub-commands: one to handle the path/revs output by
--merged-from/--merged-to, and another to handle the 'log'-style
output from --available-from. This offers the benefit of consistent
output from a sub-command regardless of the options it's passed
(arguably similar to the modal behavior of --xml), but has the obvious
down-side of introducing yet more sub-commands that a user must wrap
their head around.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Jul 3 02:35:56 2007

This is an archived mail posted to the Subversion Dev mailing list.