Migrating to Git from Subversion

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Migrating to Git from Subversion

Martin-Louis Bright

Hi!

 

Is there a Git mirror for the MapGuide repo in Subversion at https://svn.osgeo.org/? It would be great if this repository was on https://github.com/OSGeo, for instance.

 

 

Martin-Louis Bright

Senior Software Engineer

www.autodesk.com

signature_1744242845

 


_______________________________________________
mapguide-users mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/mapguide-users
Reply | Threaded
Open this post in threaded view
|

Re: Migrating to Git from Subversion

mmorrison

We need to make sure that we keep the code changes Autodesk is still making to ensure compatibility.

 

Martin Morrison

Application Engineer

Main Office: 540-345-1410 Toll Free: 888-355-0081

Products ǀ Training ǀ Service ǀ Tech Support

 

Please visit microcad3d.com for more information!

 

 

From: mapguide-users <[hidden email]> On Behalf Of Jackie Ng
Sent: Tuesday, May 26, 2020 7:47 AM
To: [hidden email]; [hidden email]; [hidden email]; [hidden email]; [hidden email]
Subject: Re: [mapguide-users] Migrating to Git from Subversion

 

Hello Martin-Louis,

 

I'm cross-posting this to multiple mailing lists, hope this discussion doesn't explode into spaghetti!!

 

There is no official git mirror. Un-officially, I have made some attempts to create git mirrors:


https://github.com/jumpinjackie/cs-map
https://github.com/jumpinjackie/fdo
https://github.com/jumpinjackie/mapguide
https://github.com/jumpinjackie/fusion

But these repos are many months out of sync as I've stopped my personal AWS EC2 instance that was doing the mirroring.

The problem with git mirroring right now is:

 1. MapGuide has svn:external links to CS-Map and Fusion repos. If we mirror MapGuide to git, we have to mirror CS-Map and Fusion to git as well at a bare minimum and translate svn:external references to their git equivalents (submodules?)
    1.1. CS-Map has really large dictionary data files that break github's repo file limits forcing me to use git-lfs for storing these files. But git-lfs storage is a severely restricted service on GitHub's free tier. Last I checked, I used up my free tier git-lfs quota just doing a single force push of this repository!
    1.2. Git submodules are hell in my personal experience, but not using submodules require developers having to set up CS-Map and Fusion source trees manually within MapGuide's source tree.
 2. I have not been successful in coming up with a svn -> git conversion scheme that allows commits or merged PRs in github to easily flow back into SVN. This is probably because I've been cleaning out historical baggage (eg. Commits of source/binary tarballs in LinuxApt/Installer) as part of the svn -> git conversion process with bfg repo cleaner so a git clone is not so bloated. But even on pristine converted git repos I could not succesfully get git commits to flow back to its svn counterpart.

Now suppose we give up the notion of trying to have a bidirectional svn <-> git mirror and just bite the bullet and do a full blown one-way migration (leaving the svn repos behind, and not have to worry about #2 above). Then the problems become project management related.

 a) You preferably want buy-in from all PSCs involved in this one-way migration, otherwise you're having to setup up and maintain "un-official" git mirrors of all MapGuide upstream repos.
 b) For FDO particularly, I know Autodesk keeps maintaining a 4.2 commercial branch that I like to selectively merge useful commits from into OS trunk and other OS branches on a semi-regular basis. One-way migrating FDO to git would need Autodesk buy-in to continue their maintenance on the migrated git repository.
 c) For CS-Map particularly, the dictionary file size limitations have to be addressed. Preferably in a way that does not involve a paid git-lfs storage plan.
 d) There's organizational questions around whether these migrated repos should fall under the OSGeo github org or another github org.
 e) There's also setup/integration questions around OSGeo CLAs in these repos as being an OSGeo project, we could not accept external pull requests without confirmation (strongly-and-preferably automated) that the submitter has signed and submitted an OSGeo CLA

 

Pardon the preceding wall of text, I had thoughts about git migration brewing in my mind for a while but had not put anything to words since nobody else had posed the git migration question until now.

 

Since you are also from Autodesk, it would probably be more effective to for you to start this conversation with your colleagues who still commit changes to these various projects "from within" to seek some consensus from the Autodesk side as to whether it is worth moving to github in addition to addressing some/all of the points I've raised. I wouldn't want to go all-in on a one-way git migration only to find Autodesk still making commits to the original SVN repos afterwards.

 

- Jackie

 

--

Hi!
Is there a Git mirror for the MapGuide repo in Subversion at https://svn.osgeo.org/? It would be great if this repository was on https://github.com/OSGeo, for instance.
Martin-Louis Bright
Senior Software Engineer
[signature_1744242845]
-------------- next part --------------
An HTML attachment was scrubbed...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 7121 bytes
Desc: image001.png

 


_______________________________________________
mapguide-users mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/mapguide-users