Interesting. It appears that svn ls of "dir@1" works fine. As does svn cat of "dir/file@1". svn proplist of "dir/file@1" appears to work as well.
svn log -v appears to be incomplete, as it shows "dir" removed, but not also added in the revision. svn info fails, as you note. Looks like a bug to me. Eric. On Mon, Nov 18, 2019 at 1:53 AM Иван Селин <ivanse...@yandex-team.ru> wrote: > Hi! > > I think I've found a bug in subversion client. Setup is as follows: > 1. Create directory with a file in it — commit 1 > 2. Replace directory with other file — commit 2 > 3. Call "svn info dir/file@1" — it should give information about dir/file > at revision 1, but it fails saying that "dir" is a file at latest revision: > > svn: E160016: Failure opening '/dir' in revision 2 > svn: E160016: '/dir' is not a directory in filesystem > '0bc899d5-c233-4fed-98a3-8705ddfc96c4' > But directory can be listed, it shows the file, and file can be listed too: > $ svn info file:///tmp/subversion-info-on-replaced-file/repo/dir@1 > Path: dir > URL: file:///tmp/subversion-info-on-replaced-file/repo/dir > Relative URL: ^/dir > Repository Root: file:///tmp/subversion-info-on-replaced-file/repo > Repository UUID: 0bc899d5-c233-4fed-98a3-8705ddfc96c4 > Revision: 1 > Node Kind: directory > Last Changed Author: ivanselin > Last Changed Rev: 1 > Last Changed Date: 2019-11-18 11:38:16 +0300 (Пн, 18 ноя 2019) > > $ svn list file:///tmp/subversion-info-on-replaced-file/repo/dir@1 > file > $ svn list file:///tmp/subversion-info-on-replaced-file/repo/dir/file@1 > file > > So, only "info" does not work. It seems that it's performing directory > check against HEAD instead of provided peg revision. Adding --revision key > changes nothing. This is trunk svn (1.14.0-dev, r1869957), svn 1.9.7 does > not have this bug, it correctly shows info. > > Sample reproduction script attached. > > Regards, > Ivan. >