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

RE: how to compare an exported file (or set of files) against the repository?

From: Mertens, Bram <mertensb_at_mazdaeur.com>
Date: Wed, 5 Oct 2011 16:30:23 +0200

>

Mazda Motor Logistics Europe NV, Blaasveldstraat 162, B-2830 Willebroek
VAT BE 0406.024.281, RPR Mechelen, ING 310-0092504-52, IBAN : BE64 3100 0925 0452, SWIFT : BBRUBEBB

-----Original Message-----
> From: Ulrich Eckhardt [mailto:ulrich.eckhardt_at_dominolaser.com]
> Sent: woensdag 5 oktober 2011 15:38
> To: users_at_subversion.apache.org
> Subject: Re: how to compare an exported file (or set of files) against the
> repository?
>
> Am 05.10.2011 14:49, schrieb Mertens, Bram:
> > I have been unable to find an answer to this in the FAQ or the
> > mailing list archives. I found one question that appears to be
> > similar to what I'm trying to achieve but it did not contain a
> > reply that solves my problem.
>
> I haven't found the need for that yet, even though I'm prepared (see
> below) for the situation.
>
> > I've got a set of files that were exported from a repository some
> > time ago. The files have been moved around and some have been
> > edited since.
> >
> > I would like to find out:
> > a) what revision these files are from and
>
> There are so-called keywords, which SVN can be made to replace in text
> files. You can for example tell it to fill in the URL and revision a
> file is checked out from. This can be used to attach some metadata to an
> exported source tree. Of course that doesn't help you know, unless
> someone already prepared for this case. Note that the revision of a file
> doesn't change if you change a different file, so it can't give you
> _The_ revision of the source tree. OTOH, there is no guarantee that you
> don't have an export from a mixed-revision working copy.

Thx for this, but I am aware of this feature and should have mentioned that it is currently not being used (though I'll be changing that).

> > b) changes have been made to it that may not be in the repository?
>
> Find out where this was exported from, and check out that revision. Copy
> the export on top of it and compare, or use a recursive tree comparison
> utility.
>
>
> > Is this possible without looping through all the revisions and
> > calculating checksums? The problem with appraoch besides the time it
> > would take is that it would obviously not catch files that are not
> > 100% identical to the files in that revision.
>
> If the source tree contains files from several different revisions, that
> will be the only (hard) way to go. However, I guess you can expect that
> the export was made from one revision. If you know the history of the
> according project a bit, you might be able to find the approximate
> revision it was checked out and from there search for the exact
> revision. Another hint might be hidden in modification timestamps.
>
> BTW: The most efficient way is to check out an approximate revision and
> then use "svn up -r ..." to move to the next revision quickly. In
> particular you shouldn't use export instead of an incremental update.

Too bad there is no less complicated way of doing this but I guess I'll use a combination of the suggestions in this thread to accomplish what I need.

If anyone has a better suggestion I'd like to hear about it still.

Regards and thanks for all the feedback received so far.

Bram
Received on 2011-10-05 16:31:01 CEST

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

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