[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: