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

Announcing svnsquash: what should I do with it?

From: Eric S. Raymond <esr_at_thyrsus.com>
Date: Mon, 14 Sep 2009 22:55:12 -0400

svnsquash is a dumpfile filter. From svnquash's help:

   The 'squash' subcommand merges adjacent commits that have the same
   author and log text and were made within 5 minutes of each other.
   This can be helpful in cleaning up after migrations from file-oriented
   revision control systems, or if a developer has been using a pre-2006
   version of Emacs VC.

   During the process, squash normally emits a map showing how old
   revision numbers map into new ones to standard error. The -p argument
   suppresses emission of the map, and instead makes svnsquash emit a
   progress spinner and elapsed time to standard error.

   The range option limits the range over which squashing will be performed.
   It may be an integer revision number or the special name HEAD for the
   head revision; these cases are interpreted as ranges up from the
   zero revision. Or it may be a colon-separated pair of integers, ir
   an integer followed by a colon followed by HEAD.

   svnsquash attempts to fix up references to Subversion revisions in log
   entries so they will still be correct after squashing. It considers
   anything that looks like the regular expression \br[0-9]+\b to be
   a comment reference (this is the same format that Subversion uses
   in log headers).

   The option --flagrefs causes svnsquash to wrap its revision-reference
   substitutions in curly braces ({}). By doing this, then grepping for 'r{'
   in the output, you can check for false conversions.

   The 'select' subcommand selects a range and permits only revisions in
   that range to pass to standard output. A range beginning with 0
   includes the dumpfile header.

I wrote svnsquash in order to clean up the gpsd repository, which has over
700 revisions in it that are scar tissue from old VC. Is there a
Subversion contrib or tools subproject I can drop this on?

		Eric S. Raymond
Received on 2009-09-15 04:55:47 CEST

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.