Re: [boost] Live read-only GIT mirrors of Boost trunk SVN
All branches and tags, as far as I can tell, are mirrored correctly. I've set a cron job every 24 hours. Theoretically if we had an authors mapping file it would work in the opposite direction too i.e. be read-write.
Nice. You can find a complete author mapping here: https://github.com/ryppl/Boost2Git/blob/master/authors.txt
Arse. I only rebuilt the mirror this weekend because it wasn't mirroring tags/release/* which has obvious value. Fixed now.
My next task is to live mirror a github repo into Boost Sandbox. Currently SubGit segfaults on this due to the complex SVN properties auto-translation which requires a specially marked up .gitattributes, but the author is very keen to fix the problem. In theory then it ought to just work.
Any mistakes in my Boost mirror, or any problems, or even thoughts are gratefully received.
Don't put too much effort into this; Boost SVN->Git modularization is just about ready for review :-)
My experience with SubGit has been very, very good. I would *strongly* recommend it over git2svn. The company which develops it has been very impressive in response rate and going the extra mile to help me figure out problems. BTW Dave with much help from the same company I've figured out the opposite flow: automated Git => Boost SVN. It took a lot of trial and error to work around Boost's MIME type and EOL conventions, but you can see an exact automated mirror of https://github.com/ned14/TripleGit at http://svn.boost.org/svn/boost/sandbox/triplegit/. I had to squash history because of the MIME type problems though :( but from now on it should be live. I think it would be quite easy to set up a live perfect Git mirror of all Boost SVN, do a transition period where SVN is writeable but GIT read only, and then one day the switch is flipped and it goes the other way round. That way anyone dependent on SVN keeps on working, but without write access. Niall --- Opinions expressed here are my own and do not necessarily represent those of BlackBerry Inc.
on Mon May 06 2013, Niall Douglas
My experience with SubGit has been very, very good. I would *strongly* recommend it over git2svn.
Why, have you got a lot of experience with both tools? You'd recommend SubGit for what job, exactly? Does it modularize? (answer: no). We didn't choose svn2git at random: we started using it because KDE (a much bigger project than Boost) used it to solve the exact same problems Boost has to solve: modularization + Git migration. You'd have to have some pretty compelling arguments, a complete plan for migration and modularization, and be prepared to lead the effort yourself for me to throw out years of planning and coding to use a different tool. Do you really think you're making a reasonable suggestion?
The company which develops it has been very impressive in response rate and going the extra mile to help me figure out problems.
BTW Dave with much help from the same company I've figured out the opposite flow: automated Git => Boost SVN. It took a lot of trial and error to work around Boost's MIME type and EOL conventions, but you can see an exact automated mirror of https://github.com/ned14/TripleGit at http://svn.boost.org/svn/boost/sandbox/triplegit/. I had to squash history because of the MIME type problems though :( but from now on it should be live.
Two way Git <-> SVN mirroring by itself is nice, but doesn't do much to get us closer to the long-term goal of modularization. It does seem like a very nice way to get Boosters comfortable with Git while we figure out modularization, but there isn't much time left... If you will administer the mirror, I think it it could still be useful for some Boosters.
I think it would be quite easy to set up a live perfect Git mirror of all Boost SVN,
From http://subgit.com/book/index.html#branches-mapping it's clear that
"Perfect," really? I think you are grossly underestimating some of the strange ways that the SVN filesystem has been used over Boost's history. the SubGit tool isn't equipped to deal with them properly. For example, there's no revision range limiting in the branch mapping, a feature of svn2git that we actually *need* to use.
do a transition period where SVN is writeable but GIT read only, and then one day the switch is flipped and it goes the other way round. That way anyone dependent on SVN keeps on working, but without write access.
Again, I think a two-way mirror could be a really nice addition to the existing transition plan, if someone is willing to put in the elbow grease to set it up. Are you volunteering? -- Dave Abrahams
On Tue, May 7, 2013 at 2:44 AM, Dave Abrahams
...
Two way Git <-> SVN mirroring by itself is nice, but doesn't do much to get us closer to the long-term goal of modularization. It does seem like a very nice way to get Boosters comfortable with Git while we figure out modularization, but there isn't much time left... If you will administer the mirror, I think it it could still be useful for some Boosters.
While having multiple Git mirrors for Boost may be "useful for some Boosters", it is very confusing for some of us. Which is the real Boost? IMO, Boost needs one modular Boost/Git mirror that works, rather than several that sort-of, almost, work. --Beman
participants (3)
-
Beman Dawes
-
Dave Abrahams
-
Niall Douglas