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

Re: Adding -c to export?

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: 2006-01-11 23:06:12 CET

> Joshua Varner wrote:
>
> The -c/--change option indicates that an action should be taken
> on the "change set" for a given revision. I believe this makes sense
> in the case of export, in that exporting a particular revision would
> export only those files that have changed in that revision.

That's not a very close match to the present meaning of "--change". It
presently means "the change that was made", not "the set of files that were
changed". However, if we need that feature, the discussion of what
command-line syntax should invoke it is secondary.

I don't know whether we need that feature. It isn't a need that I have
encountered. We would probably also want to be able to export the set of files
that had changed over a given range of revisions.

John Peacock wrote:
> If export was exactly the same thing as checkout/update, minus the admin
> files, then it would be straightforward to support:
>
> svn export --update svn://url
>
> so that export could be used to *update* an existing exported tree.

How would you propose to determine whether each file needs to be updated, and,
if so, which repository revision it currently matches? Ideas:

   * Use an rsync-like algorithm to update any data without even knowing
whether it matches any previous revision.

   * Calculate a strong checksum (or "digest") of the file, and then search
backwards through the repository history of the file until finding that same
checksum? I suppose that would be safe enough and perhaps not slow in the
common cases.

   * Do something with the file's time stamp. Not sure what exactly; I'm sure
we couldn't rely on it as an exact indicator of which revision the file matches.

[...]
> At all times, the information as to what files to delete, add, patch,
> etc. is available to do those on a admin-less export tree (with a little
> finesse to generate a virtual entries file).

Heh! You think it just needs "a little finesse"? Show us the code! :-)

- Julian

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Jan 11 23:08:55 2006

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