Hi Diederik!

I agree, I think anything that reduces the complexity of the ecosystem
is great and the lowers the barrier for entry. As pretty anything uses
Git now, I think migrating more things from SVN to Git would be great.

On Fri, Jan 27, 2023 at 07:56:37PM +0100, Diederik de Haas wrote:
> I wouldn't be surprised if most people would bail out at the first 404 
> message.
> 
> There must be a better way?
> - I don't know if someone has already done this migration and could share 
> their experience/tools/etc?
> - If it needs to be done, isn't it way better to do a mass-migration of all 
> the repos which haven't been converted yet? There may be a high similarity 
> between the various SVN repos, but all the projects within one SVN repo 
> likely 
> share many things? Like svn-user to git-user mapping?
> - And then update d/control so that the PTS page links directly to the salsa 
> repo?
> (- I don't know if snapshot.d.o could/should play a role in this)
> 
> Would love to hear some thoughts on this.

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=unchanged&include_transient=off&include_historical=off

Here's what I have so far:

 * A scheduler script that determines what things still claim to
   be hosted on alioth and finds the matching archive
   
https://salsa.debian.org/janitor-team/janitor.debian.net/-/blob/master/schedule/vcswatch-candidates.py
   (based on vcswatch data in UDD)

 * A "import-from-alioth.py" script
 
(https://salsa.debian.org/janitor-team/janitor.debian.net/-/blob/master/import-alioth-archive.py)
 that takes an alioth archive and pulls it into the local repository.

 * lintian-brush has a mapping of team names to locations in salsa,
   here: 
https://salsa.debian.org/jelmer/lintian-brush/-/blob/master/lintian_brush/salsa.py

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.

 * Verification that this is all working well

 * and then perhaps gradually rolling it out, starting with QA packages.
   then perhaps getting buyin from the maintainers of the packages
   involved and doing the rest.

Cheers,

Jelmer

Reply via email to