Per Michael's suggestion I'm branching this off into a new thread. I'll start by saying this is somewhere I think I could help alot -- I'm still a recovering liberal arts major so I can't claim to grok too much of the underlying computer sciency bits. I've also spent as much if not more time in IT managing infrastructure and processes than building software. Finally, I've got some facilities access that could be helpful in a pinch. Anyhow, here goes:
1) Build targets: Real question is what do we want to target. I do think we can target different versions for development work versus runtime compatibility. EG, nothing is stopping us from making the dev/build environment VS 2010 while still targeting the 2.0 runtime. Personally, I'd vote aiming for 3.5/VS 2010, at least for the 3.0 branch. 2) CI : oh hells yeah. My vision would be to setup something where the automated conversion would be triggered by commits to the "stable" branch of the java project. I think if we can construct this bit right we can even really get down the road of automatically running all the conversion options until we get it "right". Another angle to this is that, if it is the paid tool we need, we only need the build agent to have a license -- it could easily just convert the source and check it in where people could check it out and work on it. Or something like that. But back to the mundane -- I've got alot of seat-time with TeamCity and I'd be happy to setup a build server. I've got the facilities to handle this personally. I think to really get it right we'll have to make some significant changes in the project structure which brings me to .. . 3) What should be in SVN: I'm a big fan of everything and the kitchen sink. Its 2011, server space and bandwidth are cheap. Philosophically, checkout -> build should be a seamless, painless process on this sort of library-style project presuming basic prerequisites. I like the idea of including the .gitignore (and .hgignore) files. Once setup, they really don't change unless you are really re-working stuff. And given the setup with a restricted SVN "master" we are going to leave lots of patches in the street if we can't be DCVS friendly. 4) Mono: my mac-filesystem-foo failed me, but I think the bits I uploaded wrt issue https://issues.apache.org/jira/browse/LUCENENET-377 should compile on Mono using the build script included pointed at the appropriate tool. In any case, this can easily be part of a teamcity build process. We can even do it on linux if we'd like. Hope this helps.