What happens to old repo links?

Ulrich Spörlein uqs at freebsd.org
Sat Jul 11 09:41:50 UTC 2020


On Fri, 2020-07-10 at 20:52:35 -0400, Dan Langille wrote:
> Hello,
> 
> At present, we have links to old commits, such as: https://svnweb.freebsd.org/ports/head/graphics/mesa-devel/Makefile?annotate=537860
> 
> In git, how will that work? How will we get to revision 537860?
> 
> Similarly, for https://svnweb.freebsd.org/ports?view=revision&revision=537860
> 
> How will that work?
> 
> Thank you.

Someone will have to write a redirector that greps in the notes for the
hash of the corresponding SVN revision. Note that not all SVN revs are
present in git as such, as they might not make sense and have been
skipped.

% git log --notes --grep=revision=537860\$ master
commit 69116835276115e2dbec1332f2070300e4905d76
Author: Jan Beich <jbeich at FreeBSD.org>
Date:   2020-06-04 00:49:09 +0000

    graphics/mesa-devel: update to 20.1.b.1495

    Changes:        https://gitlab.freedesktop.org/mesa/mesa/-/compare/fb62e642ae6...8252bb0ec6d

Notes:
    svn path=/head/; revision=537860


So the redirector needs to run:
% git log --format=%H --notes --grep=revision=537860\$ master
69116835276115e2dbec1332f2070300e4905d76

and 301 to https://cgit-beta.freebsd.org/ports/commit/?id=69116835276115e2dbec1332f2070300e4905d76 or
https://cgit-beta.freebsd.org/ports/diff/graphics/mesa-devel/Makefile?id=69116835276115e2dbec1332f2070300e4905d76
depending on a file path being present or whatever.

If a plugin in gitolite could do that translation, that would be great.

hth
Uli


More information about the freebsd-git mailing list