* Toby Johnson <toby@etjohnson.us> [2004-06-22 23:14]:
> >>The problem with this is that I can't easily go to /trunk a year from
> >>now, and find out how file /trunk/foo.c changed from tag "1.0.1" to
> >>"1.0.2", since the commit messages from creating the tags only show up
> >>in a "svn log" of /tags, not of /trunk. The best approach I see is to do
> >>a log of /tags, find out the revision numbers for the 1.0.1 and 1.0.2
> >>tags, then do a diff on /trunk/foo.c using the explicit revision numbers
> >>obtained. This is rather unwieldy, especially using TortoiseSVN.
> >
> >If I understand correctly, can't you just do this?
> >
> >svn diff /path/to/repos/tags/1.0.1/foo.c /path/to/repos/tags/1.0.2/foo.c
> >
> No, that doesn't work, unless maybe you use full URLs. (Of course, your
> example would work with a regular "diff" program, which unfortunately
> isn't standard on Windows).
Yeah, /path/to/repos was meant to represent a URL path. I don't know
much about diff programs on Windows... does TortoiseSVN provide a way to
do a diff between arbitrary URLs?
> >svn log --stop-on-copy /path/to/repos/tags/1.0.1/foo.c
> > (to find out the revision when 1.0.1 was created)
> >svn log -rN:HEAD /path/to/repos/tags/1.0.2/foo.c
> >
> That doesn't work either, because tag "1.0.2" didn't yet exist at
> revision "N".
It works for me. If it had been just -rN, then it would have failed
with a "path not found" error (but will work in 1.1, I believe).
However, -rN:HEAD works because /tags/1.0.2/foo.c does exist in the HEAD
revision, and Subversion can just follow the log messages back from
there.
-- Mike
--
Michael W. Thelen
He who asks is a fool for five minutes, but he who does not ask remains a fool
forever. -- Chinese proverb
Received on Wed Jun 23 08:28:41 2004