Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

svn: E160013: File not found: revision 21602, path 'XXX' SVN Log Query

Tags:

command

svn

slik

I am trying to query the SVN Log to get an XML output for a feature branch to include all revisions between 2 dates using SlikSVN cmd line. I am getting the error above "svn: E160013: File not found: revision 21602, path 'XXX'". When I browse to the location in the path it doesn't exist and if I search through SVN log in tortoise I can't find the revision 21602. This is the query:

svn log --xml PATH -v -r {2012-09-25}:{2013-02-22} > XXX.xml

I tired running the following:

svn log --xml PATH -v -r 21603:{2013-02-22} > XXX.xml

and the same error is returned except with revision "21603" even though I can see it exists in the Tortoise Log.

I have run the exact same query against many feature branches before and never had this issue. I tried running it against the trunk this was cut off as a test and I get the same type of error. Just on an aside the revisions refer to folders and files(XXX in the error message outlined above) in the root of the branch that never existed. Some help on this would be much appreciated as I have exhausted all resources available to find out what's going on here.

like image 493
user1336850 Avatar asked Feb 22 '13 17:02

user1336850


1 Answers

First of all, if you want to query a file that does not exist in the current working copy anymore, you need to provide the full path to the SVN repository location, e.g. http://svn/repo/trunk/src/myfile instead of src/myfile.

Second, if it was deleted, it will not show up by just using -r <rev> - you need to provide a peg revision, i.e. a revision that identifies at what point in time (i.e. at which revision) Subversion should look for the specified path. It will then use the object it finds in that revision at the specified path to perform all the requested operations.

Lastly, if the operating revision range (i.e. what you provide with the -r option) includes a revision in which the specified path does not exist anymore, Subversion will again complain that the file was not found.

For more information on peg revision, have a look at this link: http://svnbook.red-bean.com/en/1.6/svn.advanced.pegrevs.html

For your query, try

svn log --xml FULLPATH@REV -v -r {2012-09-25}:LASTREV > XXX.xml

where FULLPATH is the full repository path, REV is any revision where the path existed, and LASTREV is the last revision at which the file/folder existed in the repository.

like image 171
Michael Schlottke-Lakemper Avatar answered Oct 20 '22 20:10

Michael Schlottke-Lakemper