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

Re: Delete revision of an object has no peg revision?

From: Byron Brummer <byron.brummer_at_livenation.com>
Date: 2007-01-11 23:10:31 CET

Jeff Smith wrote:
> On Thursday 11 January 2007 13:45, Jeff Smith wrote:
>
>> I think the major problem lyes in what exactly is an object. When
>> copying "/trunk/prj1/" to "/tags/prj1_1/", is the new one the same
>> object? Of course not. If an object gets moved from "/trunk/" to
>> "/trunk/prj2/", is the latter the same object as the first? No.
>
> I'd better add quickly that I read your original post again, and I
> agree with you completely, that there should be an easier way to see
> that "file.txt" has been deleted, when only looking at that file's
> log.
>
> I also agree with everyone else 100%. The detail that I think you
> should accept concerning displaying log entry for "-r1234" (in which
> "file.txt" no longer exists) is that the file no longer exists there.
> I guess they just couldn't think of any way to show the deletion of
> that file except by looking at the containing folder, and I can't
> think of one either. If you have any solutions yet, we'd like to hear
> them.
>
> It's just that I agree we should not be able to see "some/file.txt" in
> -r1234, because it simply does not exist in that state (revision 1234
> of the tree).

        A log is a history and a history is not at state nor a collection
        of states. Humor me for a moment...

        If we were talking about "svn info", "svn update", or other
        "state" tools I'd agree. But we're talking about "svn log" which
        is a history tool. -As I noted in another post, if it was a
        state tool it couldn't accept ranges like -r10:20 much like svn
        info can not.

        But I think it matters not. I'm of the mind now that the way to
        move forward is not to mess with the current results svn log
        produces (no matter what I think of them), but instead to expand
        the svn log command to offer a new syntax for such things:

                svn log -r10:20 path@ALL

                Results in the history of path between revs 10 and 20
                inclusive, irregardless of peg version changes or
                existence.

                svn log --action A path@ALL

                Results in all log entries where path was Added,
                regardless of the peg versions.

                svn log --action D path@1234

                Results in the single log entry which notes path being
                deleted (or replaced) for peg version (ie object) 1234.
                To match current SVN nomenclature 1234 must be a rev
                of the object at a state when it did exist. In the
                above example it might return the log for r4567 if that
                was the log which describes the Deletion of 1234.

                svn log path@ALL

                The entire history of path from the first Add to the
                last Deletion and everything in between, irregardless
                of the peg version or the existence of a peg version.
                In other words "ALL" really, truly, means "ALL,
                Everything, Give it to me I can handle it baby, yah!"

        I'm starting to work on coding this up in svn to see how well
        it might function in practice.

-Byron

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Fri Jan 12 05:30:22 2007

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.