On 15.06.2010 19:38, Julian Foad wrote:
> Stefan Küng wrote:
>> Any comments on this please?
>>
>> On Wed, Jun 9, 2010, Stefan Küng<tortoisesvn_at_gmail.com> wrote:
>>> The following script fails with both 1.6.x and trunk:
>>>
>>> svnadmin create testrepo
>>> svn co file:///d:/development/svn/svntests/testrepo testwc
>>> cd testwc
>>> echo test> file.txt
>>> svn add file.txt
>>> svn ci -m ""
>>> echo test2> file.txt
>>> svn ci -m ""
>>> echo test> file2.txt
>>> svn add file2.txt
>>> svn ci -m ""
>>> svn ren file.txt file3.txt
>>> svn ci -m ""
>>> svn cat file3.txt_at_4 -r3
>>>
>>> svn: Unable to find repository location for 'file3.txt' in revision 3
>>>
>>> Note: if the commits of file2.txt are not done (i.e., there's no revision
>>> between the asked rev and the rename), then it works.
>
> Hi Stefan.
>
> First, I don't like writing "file3.txt_at_4" but I note that exactly the
> same result occurs if I write "svn cat ^/file3.txt_at_4 -r3".
>
> Look at the log of file3.txt:
>
> $ svn log -vq file3.txt
> ------------------------------------------------------------------------
> r4 | julianfoad | 2010-06-15 18:26:31 +0100 (Tue, 15 Jun 2010)
> Changed paths:
> D /file.txt
> A /file3.txt (from /file.txt:2)
> ------------------------------------------------------------------------
> r2 | julianfoad | 2010-06-15 18:25:56 +0100 (Tue, 15 Jun 2010)
> Changed paths:
> M /file.txt
> ------------------------------------------------------------------------
> r1 | julianfoad | 2010-06-15 18:25:29 +0100 (Tue, 15 Jun 2010)
> Changed paths:
> A /file.txt
> ------------------------------------------------------------------------
>
> The history of file3.txt doesn't include r3: in r4 it was copied from
> r2. r3 does contain a 'file.txt' that is connected to file3.txt_at_4 by a
> common ancestor, but I don't think we intend that to be the result of
> this query.
>
> It seems to me it already works as intended. What do you think?
When I specify
svn cat ^/file3.txt_at_4 -r3
that means I like the content of the file named file3.txt as it was
located in r4, but as it looked in r3. I think that's what a peg
revision is for: I want to look at a path in an earlier revision where I
have no idea what location it has in that revision, so I give the peg
revision for the path I know in that revision.
since ^/file3.txt_at_4 existed in r3 (it was named file.txt in r3), I think
that command has to work. Otherwise what's the point of peg revisions?
If I have to first check the whole log to find the name of the file in
the revision I want, I don't need peg revisions.
So I really think even though this might be intended, it's not what
users (and me neither) expect.
Stefan
--
___
oo // \\ "De Chelonian Mobile"
(_,\/ \_/ \ TortoiseSVN
\ \_/_\_/> The coolest Interface to (Sub)Version Control
/_/ \_\ http://tortoisesvn.net
Received on 2010-06-15 19:49:14 CEST