[Python-Dev] svn problem - can't get log info for a specific revision

"Martin v. Löwis" martin at v.loewis.de
Tue Dec 6 00:51:44 CET 2005

Martin v. Löwis wrote:
> It complains that, in revision 36760, there was no release24-main
> directory, so it can't know what the history is. I would consider it
> a bug: it could know that release24-maint was a copy of trunk
> which was made after 36760, so it could conclude I meant to
> perform the same operation on trunk, then.

I just asked on the #svn irc channel, and was told that it indeed
should *not* follow copies when I do "svn log -r revno", instead,
it should give me information on the path as it looked in revno
(so in this case, it should tell the path didn't exist).

Sometimes, you want to know "how did foo look in revision revno,
even if it was called bar at that time". To do that, you refer
to foo at revno, and then can add a revision of that object.
They call this syntax "peg revision".

So to do what you want, you should be able to say

svn log -r 36760 . at HEAD

(i.e. find out what . as it is in HEAD was in revision

Unfortunately, svn log does not support peg revisions,
so I filed a bug report at


To see an example where peg revisions do work, do

martin at mira:~/work/py2.4$ LANG=C svn info -r 36760 . at HEAD
Path: trunk
URL: svn+ssh://pythondev@svn.python.org/python/trunk
Repository Root: svn+ssh://pythondev@svn.python.org
Repository UUID: 6015fed2-1504-0410-9fe1-9d1591cc4771
Revision: 36760
Node Kind: directory
Last Changed Author: mwh
Last Changed Rev: 36760
Last Changed Date: 2004-08-03 16:37:14 +0200 (Tue, 03 Aug 2004)

(But then, this is also what you get if you do
  "svn info -r 36760")


P.S. Instead of HEAD, you would normally use BASE: HEAD
is the latest revision in the repository, whereas BASE
is the one that your working copy is based on.

More information about the Python-Dev mailing list