On 11/21/2006 6:30 AM, Nikki Locke wrote:
> John Rouillard wrote:
>> On Mon, Nov 20, 2006 at 07:30:09PM -0000, Nikki Locke wrote:
>>> What commands can you do with a label/revision no (using -r<label>)
>>> that you can't do with a tag (using the tag url)?
>
>> How about cherry pick multiple files at different revisions without
>> going crazy? See any of my prior emails/use cases on the issue.
>
> If you want two different files from the same directory at different
> revision numbers, then you don't want to be using Subversion. As far as
> I can see, Subversion is built round the assumption that the smallest
> unit you can check out is a directory. I can see how any attempt to go
> against this basic assumption would meet with a lot of resistance.
But you can update individual files, and if you modify a file and commit
it, it will be the only file checked out at the new revision.
> If you just want different directories, each at different revisions,
> then it is easy - check out a working copy containing the versions you
> want, test everything works as desired, then tag the working copy.
>
>> The problem with SVN's tags as I see it is that it defies common
>> understandings of space/time. Space is branches - different lines of
>> development, different files in a tree etc. It is the "name" or
>> location of the object you are working on. All can be handled by a
>> url.
>>
>> Versions/revisions always occur along the time axis not the space
>> axis. SVN even recognizes this by allowing date or revision numbers as
>> the parameter to the -r flag. SVN just doesn't follow through on it
>> preferring to use space (a tag) to define a point in time (release of
>> a portion of a tree) rather then supplying a true time only based
>> mechanism for identifying revisions of a given file or compatible
>> revisions of a set of files.
>>
>> That is IMHO the crux of the issue and will continue to be until some
>> more natural/orthoginal mechanism for identifying revisions of files
>> that should be treated as a single entity is devised.
>
> Subversion provides a time-only mechanism - it's called the revision
> number. Having a symbolic name (label) for a revision number might
> conceivably be a good thing.
>
> But Subversion's revision number applies to the whole repository. You
> seem to want a mechanism which allows you to say "I want file a as at
> 7:00, file b as at 6:30 and file c as at last week". That is an entirely
> different kettle of ball games, and, as far as I can see, goes against
> the whole idea of how Subversion works.
Subversion can certainly handle mixed revision working copies without
any strain. Just check out the head, and individually update files a,
b, and c. I've never had a need for something like that, but it's
certainly possible.
Duncan Murdoch
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Tue Nov 21 13:07:00 2006