You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Vincent Lefevre <vi...@vinc17.net> on 2010/03/25 16:33:33 UTC

problem with peg revision

Hi,

It seems that peg revisions do not work when a directory has been
renamed. For instance:

$ svn info notes
Path: notes
Name: notes
URL: svn+ssh://mysvn/arith/stds-754/notes
Repository Root: svn+ssh://mysvn
Repository UUID: 99759db8-4ec0-0310-8bf9-df86780d22d8
Revision: 35831
Node Kind: file
Schedule: normal
Last Changed Author: lefevre
Last Changed Rev: 19957
Last Changed Date: 2007-11-20 13:37:18 +0100 (Tue, 20 Nov 2007)
Text Last Updated: 2010-01-04 19:18:16 +0100 (Mon, 04 Jan 2010)
Checksum: 06585f431d7af5737b91dcfacd4e7f6d

$ svn info -r19957 notes
Path: notes
Name: notes
URL: svn+ssh://mysvn/doc/fp/stds-754/notes
Repository Root: svn+ssh://mysvn
Repository UUID: 99759db8-4ec0-0310-8bf9-df86780d22d8
Revision: 19957
Node Kind: file
Last Changed Author: lefevre
Last Changed Rev: 19957
Last Changed Date: 2007-11-20 13:37:18 +0100 (Tue, 20 Nov 2007)

$ svn info notes@19957
notes@19957:  (Not a valid URL)

svn: A problem occurred; see other errors for details
zsh: exit 1     svn info notes@19957

Is this a bug?

svn, version 1.6.9 (r901367)
   compiled Jan 27 2010, 08:12:30

-- 
Vincent Lefèvre <vi...@vinc17.net> - Web: <http://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)

Re: problem with peg revision

Posted by Vincent Lefevre <vi...@vinc17.net>.
On 2010-03-25 13:06:56 -0400, David Weintraub wrote:
> I played around with svn info and pegged revisions, and had no
> problems. Have you've looked at the svn log? That might be a place to
> start and maybe help you understand when the name change took place.

The file name never changed.

> One of the issues our users run into when specifying pegged revisions
> is that they misstate the revision.
> 
> Let's say I removed directory "foo" and committed a new revision
> 10002. When you look at the svn log, you see that revision 10002 is
> where I removed "foo".
> 
> Sometimes my developers will do something like this:
> 
> $ svn info foo@10002
> 
> and get the message that they used an invalid URL. I point out that in
> this case, they need the revision BEFORE 10002:
> 
> $ svn info foo@10001
> 
> works.
> 
> Could there be something like that going on here?

No.

But it seems that my problem is a known limitation:

  Verify that the object's location (path-wise) in PEG-REV is the same
  as it is in OPERATIVE-REV. If that's the case, at least the two
  locations are known to be directly related, so perform the requested
  action on the location in OPERATIVE-REV. Otherwise, relatedness was
  not established, so error out with a loud complaint that no viable
  location was found. (Someday, we expect that Subversion will be able
  to handle this usage scenario with more flexibility and grace.)

This is the latter case.

One problem is that it seems to be impossible to specify an object
that was removed from the current directory (actually its ancestor),
just by using its name and some revision.

And in case you didn't see...

> On Thu, Mar 25, 2010 at 11:33 AM, Vincent Lefevre
> <vi...@vinc17.net> wrote:
> > Hi,
> >
> > It seems that peg revisions do not work when a directory has been
> > renamed. For instance:
> >
> > $ svn info notes
> > Path: notes
> > Name: notes
> > URL: svn+ssh://mysvn/arith/stds-754/notes
                         ^^^^^
> > Repository Root: svn+ssh://mysvn
> > Repository UUID: 99759db8-4ec0-0310-8bf9-df86780d22d8
> > Revision: 35831
> > Node Kind: file
> > Schedule: normal
> > Last Changed Author: lefevre
> > Last Changed Rev: 19957
                      ^^^^^
> > Last Changed Date: 2007-11-20 13:37:18 +0100 (Tue, 20 Nov 2007)
> > Text Last Updated: 2010-01-04 19:18:16 +0100 (Mon, 04 Jan 2010)
> > Checksum: 06585f431d7af5737b91dcfacd4e7f6d
> >
> > $ svn info -r19957 notes
                 ^^^^^
> > Path: notes
> > Name: notes
> > URL: svn+ssh://mysvn/doc/fp/stds-754/notes
                             ^^
> > Repository Root: svn+ssh://mysvn
> > Repository UUID: 99759db8-4ec0-0310-8bf9-df86780d22d8
> > Revision: 19957
> > Node Kind: file
> > Last Changed Author: lefevre
> > Last Changed Rev: 19957
> > Last Changed Date: 2007-11-20 13:37:18 +0100 (Tue, 20 Nov 2007)
> >
> > $ svn info notes@19957
                     ^^^^^
> > notes@19957:  (Not a valid URL)
> >
> > svn: A problem occurred; see other errors for details
> > zsh: exit 1     svn info notes@19957

-- 
Vincent Lefèvre <vi...@vinc17.net> - Web: <http://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)

Re: problem with peg revision

Posted by Vincent Lefevre <vi...@vinc17.net>.
On 2010-03-25 13:06:56 -0400, David Weintraub wrote:
> I played around with svn info and pegged revisions, and had no
> problems. Have you've looked at the svn log? That might be a place to
> start and maybe help you understand when the name change took place.

The file name never changed.

> One of the issues our users run into when specifying pegged revisions
> is that they misstate the revision.
> 
> Let's say I removed directory "foo" and committed a new revision
> 10002. When you look at the svn log, you see that revision 10002 is
> where I removed "foo".
> 
> Sometimes my developers will do something like this:
> 
> $ svn info foo@10002
> 
> and get the message that they used an invalid URL. I point out that in
> this case, they need the revision BEFORE 10002:
> 
> $ svn info foo@10001
> 
> works.
> 
> Could there be something like that going on here?

No.

But it seems that my problem is a known limitation:

  Verify that the object's location (path-wise) in PEG-REV is the same
  as it is in OPERATIVE-REV. If that's the case, at least the two
  locations are known to be directly related, so perform the requested
  action on the location in OPERATIVE-REV. Otherwise, relatedness was
  not established, so error out with a loud complaint that no viable
  location was found. (Someday, we expect that Subversion will be able
  to handle this usage scenario with more flexibility and grace.)

This is the latter case.

One problem is that it seems to be impossible to specify an object
that was removed from the current directory (actually its ancestor),
just by using its name and some revision.

And in case you didn't see...

> On Thu, Mar 25, 2010 at 11:33 AM, Vincent Lefevre
> <vi...@vinc17.net> wrote:
> > Hi,
> >
> > It seems that peg revisions do not work when a directory has been
> > renamed. For instance:
> >
> > $ svn info notes
> > Path: notes
> > Name: notes
> > URL: svn+ssh://mysvn/arith/stds-754/notes
                         ^^^^^
> > Repository Root: svn+ssh://mysvn
> > Repository UUID: 99759db8-4ec0-0310-8bf9-df86780d22d8
> > Revision: 35831
> > Node Kind: file
> > Schedule: normal
> > Last Changed Author: lefevre
> > Last Changed Rev: 19957
                      ^^^^^
> > Last Changed Date: 2007-11-20 13:37:18 +0100 (Tue, 20 Nov 2007)
> > Text Last Updated: 2010-01-04 19:18:16 +0100 (Mon, 04 Jan 2010)
> > Checksum: 06585f431d7af5737b91dcfacd4e7f6d
> >
> > $ svn info -r19957 notes
                 ^^^^^
> > Path: notes
> > Name: notes
> > URL: svn+ssh://mysvn/doc/fp/stds-754/notes
                             ^^
> > Repository Root: svn+ssh://mysvn
> > Repository UUID: 99759db8-4ec0-0310-8bf9-df86780d22d8
> > Revision: 19957
> > Node Kind: file
> > Last Changed Author: lefevre
> > Last Changed Rev: 19957
> > Last Changed Date: 2007-11-20 13:37:18 +0100 (Tue, 20 Nov 2007)
> >
> > $ svn info notes@19957
                     ^^^^^
> > notes@19957:  (Not a valid URL)
> >
> > svn: A problem occurred; see other errors for details
> > zsh: exit 1     svn info notes@19957

-- 
Vincent Lefèvre <vi...@vinc17.net> - Web: <http://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)

Re: problem with peg revision

Posted by David Weintraub <qa...@gmail.com>.
I played around with svn info and pegged revisions, and had no
problems. Have you've looked at the svn log? That might be a place to
start and maybe help you understand when the name change took place.

One of the issues our users run into when specifying pegged revisions
is that they misstate the revision.

Let's say I removed directory "foo" and committed a new revision
10002. When you look at the svn log, you see that revision 10002 is
where I removed "foo".

Sometimes my developers will do something like this:

$ svn info foo@10002

and get the message that they used an invalid URL. I point out that in
this case, they need the revision BEFORE 10002:

$ svn info foo@10001

works.

Could there be something like that going on here?

On Thu, Mar 25, 2010 at 11:33 AM, Vincent Lefevre
<vi...@vinc17.net> wrote:
> Hi,
>
> It seems that peg revisions do not work when a directory has been
> renamed. For instance:
>
> $ svn info notes
> Path: notes
> Name: notes
> URL: svn+ssh://mysvn/arith/stds-754/notes
> Repository Root: svn+ssh://mysvn
> Repository UUID: 99759db8-4ec0-0310-8bf9-df86780d22d8
> Revision: 35831
> Node Kind: file
> Schedule: normal
> Last Changed Author: lefevre
> Last Changed Rev: 19957
> Last Changed Date: 2007-11-20 13:37:18 +0100 (Tue, 20 Nov 2007)
> Text Last Updated: 2010-01-04 19:18:16 +0100 (Mon, 04 Jan 2010)
> Checksum: 06585f431d7af5737b91dcfacd4e7f6d
>
> $ svn info -r19957 notes
> Path: notes
> Name: notes
> URL: svn+ssh://mysvn/doc/fp/stds-754/notes
> Repository Root: svn+ssh://mysvn
> Repository UUID: 99759db8-4ec0-0310-8bf9-df86780d22d8
> Revision: 19957
> Node Kind: file
> Last Changed Author: lefevre
> Last Changed Rev: 19957
> Last Changed Date: 2007-11-20 13:37:18 +0100 (Tue, 20 Nov 2007)
>
> $ svn info notes@19957
> notes@19957:  (Not a valid URL)
>
> svn: A problem occurred; see other errors for details
> zsh: exit 1     svn info notes@19957
>
> Is this a bug?
>
> svn, version 1.6.9 (r901367)
>   compiled Jan 27 2010, 08:12:30
>
> --
> Vincent Lefèvre <vi...@vinc17.net> - Web: <http://www.vinc17.net/>
> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
> Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)
>



-- 
David Weintraub
qazwart@gmail.com