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

svn:original-date (was: svn commit: rev 5369 - trunk/subversion/include)

From: Greg Stein <gstein_at_lyra.org>
Date: 2003-03-18 08:36:35 CET

I wanted to point out this commit for discussion on the list. I've spoken
about this idea with a number of people off-list, and the consensus has been
"yup. makes sense." Just wanted to validate that here, too...

I see at least two use cases for generating this property:

1) cvs2svn creates revisions into an existing repository. the date of the
   youngest rev (call it R) in the repos is *later* than some of the CVS
   commits. because of the time-ordering requirement on svn:date, cvs2svn
   cannot create a rev before R, the original commit date cannot be applied
   to the new rev. instead, it has to put "now" onto the rev, and then it
   can use this property to record the original CVS commit timestamp.

2) you 'svnadmin load' a dumpfile that has revisions that are older than
   revision R. again, the dates don't match, so you load the revisions, but
   migrate their date to svn:original-date and just use "now" for the
   newly-loaded revisions.

At the moment, I see tools like cvs2svn and ViewCVS using/displaying this
date. Where/how we filter it into the rest of SVN is definitely a larger
discussion. For example:

* do we encode this into 'svnadmin load' as suggested above?
* if a dumpfile has revisions with svn:original-date, but the new repository
  is going to allow that date (e.g. the revisions up to R are not present in
  the loading-into repos), do we toss the dumpfile's revision dates and go
  back to the original-date?
* do we propagate this date across the wire?
* is there a future scenario where revisions do not need to be time-ordered,
  so maybe this points to a flow in the current implementation?
* etc

Again, for now, I'm just looking to use this in "external" tools.

Cheers,
-g

On Tue, Mar 18, 2003 at 12:34:06AM -0600, gstein@tigris.org wrote:
> Author: gstein
> Date: Tue Mar 18 00:34:02 2003
> New Revision: 5369
>
> Modified:
> trunk/subversion/include/svn_props.h
> Log:
> * include/svn_props.h:
> (SVN_PROP_REVISION_ORIG_DATE): add new property definition
>
>
> Modified: trunk/subversion/include/svn_props.h
> ==============================================================================
> --- trunk/subversion/include/svn_props.h (original)
> +++ trunk/subversion/include/svn_props.h Tue Mar 18 00:34:02 2003
> @@ -256,6 +256,19 @@
> /** The fs revision property that stores a commit's date. */
> #define SVN_PROP_REVISION_DATE SVN_PROP_PREFIX "date"
>
> +/** The fs revision property that stores a commit's "original" date.
> + *
> + * The svn:date property must be monotonically increasing, along with
> + * the revision number. In certain scenarios, this may pose a problem
> + * when the revision represents a commit that occurred at a time which
> + * does not fit within the sequencing required for svn:date. This can
> + * happen, for instance, when the revision represents a commit to a
> + * foreign version control system, or possibly when two Subversion
> + * repositories are combined. This property can be used to record the
> + * true, original date of the commit.
> + */
> +#define SVN_PROP_REVISION_ORIG_DATE SVN_PROP_PREFIX "original-date"
> +
> /** @} */
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: svn-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: svn-help@subversion.tigris.org

-- 
Greg Stein, http://www.lyra.org/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue Mar 18 08:36:13 2003

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.