Re: Mass svn-to-git migration - Progress report
On Thu, Apr 06, 2023 at 11:02:26PM +0200, Diederik de Haas wrote:
> Hi,
>
> On Friday, 27 January 2023 20:14:43 CEST Jelmer Vernooij wrote:
> > I've been looking at how to do a mass conversion. There's about 375 packages
> > still listed as being on alioth (~100 in SVN, ~267 in Git, the rest in
> > something else).
> > https://janitor.debian.net/cupboard/result-codes/hosted-on-alioth?campaign=u
> > nchanged&include_transient=off&include_historical=off
>
> That page now returns 747 packages?
I think I already did some post-processing of that list. Some packages
have been migrated to salsa, but have not had any uploads since - so
the janitor can't find them yet.
> > What still needs to happen is:
> >
> > * The mapping still needs to be tied together with the import script, to
> > generate correct URLs to push to and set the Vcs-* headers
> > appropriately
> >
> > I'm not sure what to do with packages whether the owning user or team
> > is not on salsa. Add them to the "debian" group?
> >
> > * The import script supports just git right now, not svn. There's ~8
> > repositories in a VCS other than SVN or Git, which we could just
> > migrate manually.
>
> After sufficient procrastination I started working on this again ;-)
>
> The idea I had/have is to do the conversion and place them in a separate
> namespace/group, ready to be picked up by a prospective maintainer.
>
> I've now created a group for that on Salsa under which the converted repos can
> be stored: https://salsa.debian.org/groups/alioth-to-salsa-migration-team (*)
>
> That way a prospective maintainer can use that as *a* source, but can also use
> other sources like f.e. "gbp import-dscs" to create/rewrite a/the proper (git)
> history to their liking for the to be adopted package before it gets placed in
> the 'normal' Salsa structure.
>
> There's also a practical reason (for me) as f.e. the id3lib repo is stored
> under `collab-maint/deb-maint/id3lib` and having a group on Salsa allows me to
> create subgroups and subsubgroups under which to store the git repo(s).
>
> I'm open to suggestions how to structure the converted repos and possible
> (git) repos created to support this mass migration.
> I have attached the document I've written thus far wrt Subversion, but that
> really needs to be put under version control and possibly/likely split up (and
> linked from a README.md document?).
>
> *) I've also added/invited Jelmer to that group as Owner, possibly for
> practical reasons, certainly for the bus-factor reason.
I think the git repositories should just be created directly under
debian/. There's no reason not to, it makes it easier to find them
(not everybody will know about the alioth-to-salsa-migration-team),
and removes the need to create a separate group and to fork them to
debian/ later. There's not much controversial there - it's just pure
git to git.
On the subversion migrations, the hardest part is in dealing
with the differences in habits between svn-buildpackage and git-buildpackage
(or whatever you're expecting people to use). You'll need
to convert svn-buildpackage settings to e.g. git-buildpackage somehow, and e.g.
potentially weave in the upstream sources
(lots of packages in svn ship just debian/ whereas in git it's common
to include the upstream source). If you don't do that, then
it's probably better to not do a conversion from svn at all, but e.g.
do a straight import from the archive (e.g. based on the dgit
repository).
Jelmer
Reply to: