I think it's time to nail down the procedure for the switch/migration to GitHub. I propose the following:

1.) Already done: First preparatory steps:

If he hasn't already done so, every dev and contributor should dig through some basic git and github tutorials (only applies to those new to git/github of course, all you veterans out there can lay back and enjoy watching us newbies struggle ). When we start to use git/github, we should at least have a faint idea what we're doing

Step no longer necessary: Ask Daniel to stop the scripts syncing the SVN repo to the git mirror, if he hasn't done so already - they must be broken by now anyway, since there have been some commits pushed to it when the SVN repo was down. As the mirror repo has already been renamed, this step isn't really relevant for the migration procedure anymore.

Already done: Inform all users on github who made forks of the mirror repo that this repo is going to be renamed and a fresh copy of the SVN repo will be swapped in. As this fresh copy will get the name the mirror had before ("freeorion"), they might be able take some measures to ensure their forks don't get screwed up too much (as these forks most probably won't work if the source repo gets replaced by a different, kind of unrelated one).

Already done: Inform all devs and contributors to get any uncommitted work committed to SVN, as far as possible, to minimize any troubles that might arise if you need to transfer uncommitted work from a SVN working copy that will be obsolete after the switch to a git working copy.

Already done: Tied to that discussion is also the decision what the naming scheme for the builds should be in future. We won't have the SVN revision number anymore as "build number", so we need to come up with something else. Cjkjvfnby already has made some suggestions in the discussion linked above.

Update the SDKs to employ git to fetch/checkout the sources

Already done: Update the wiki main page, particularly the links to the repo and recent development work.

Decide on what needs to be changed/updated about the FreeOrion project on SF.
* Already done: What to do with the repo? Will stay as a read-only, retired/defunct repo.
* Already decided and partly done: Shut down the feature/bug trackers and point people to the issue tracker on github, or leave them active? Migrate them to the GitHub issue tracker and shut them down.
* What should be changed on the front page to indicate the official repo is now on github?
* Partly decided: Continue publishing binary releases on SF, or is there a similar feature on github, and if, shall we use that instead? We will continue to publish our releases and test builds on SF. There is a feature on github for releases, but that doesn't look useable for the weekly test builds anyway. We can use this to publish our releases on github too. Shall we do this?

6.) Happily continue developing FreeOrion, until it's finished, or death do us part, or the world ends. Whichever comes first. My bet is on option three, but I've never been known for my bright, sunny disposition...

I might have overlooked one thing or another, so any feedback, corrections, additions etc. are welcome. I want to reach a consensus ASAP, so we can go ahead with that thing.

All of this looks sensible to me. Of course, this all happens the weekend after I've finally installed SVN on the better laptop and started work there. Still, Git looks at least sensible, even if it's not at all clear how to do basic things to me yet. I'll get it, eventually.

Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

MatGB wrote:Git looks at least sensible, even if it's not at all clear how to do basic things to me yet. I'll get it, eventually.

I plan to create a thread where we can all share our insights/experiences with git so we can learn from each other. I'm already working with git on my local machine, and you just need to get used to the different workflow. After that, you'll like git very much (I hope ).

We've taken the step of renaming the freeorion/freeorion repo to fo-svn-mirror. For everyone who had forked the repo via GitHub, GitHub has automatically updated your fork to point to the new URL (I believe). Additionally, until such time as we actually create a new freeorion/freeorion repo, all web traffic and git clone, fetch and push operations targeting freeorion/freeorion will (for now) get rerouted to freeorion/fo-svn-mirror, according to GitHub docs. If you did directly clone freeorion/freeorion to a repo on your local computer then you should update it as described here to be sure of avoiding hiccups when we do a fresh/full import of the sourceforge repo as freeorion/freeorion. If your version of git is old enough that it doesn't support set-url then you can use the process described here.

Although the mirroring from SourceForge had stopped (when SF stopped working and we started making the first steps to migrate here), we'll see if we can get the mirroring restarted (to the new URL) until such time as the full import is done.

If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

I've updated the OP due to some things already done/no longer necessary to do, and some things I overlooked/didn't think of, but are probably important enough to be incorporated into the procedure.

Quick summary of my edits: Marked steps already done or rendered unnecessary by things we did in the meantime, added new (3rd) step, added several cleanup steps.

As there hasn't been any major complaints/objections, I assume that the procedure as outlined meets more or less general consensus. Which is great, as we can go ahead.

So, I propose to schedule the switch for coming Sunday (March 22nd). Set a deadline for final commits to the SF SVN repo at 12am UTC, I will then proceed with the proposed procedure: revoke commit access (step 3) from everyone except the project admins (who I ask to refrain from committing anything after the deadline ) and begin importing the SVN repo into the new "freeorion" repo within the freeorion account (step 4).

I intend to post a global announcement (I hope I've sufficient rights for that) on the forum informing about the deadline and asking everyone to commit everything they want to have committed before the switch. I'll do that either today, later in the night, or tomorrow morning (to give some opportunity to raise objections, offer corrections etc.). Once the SVN repo has been successfully imported into the new github repo, I'll post another announcement that the official repo has been moved. From that point on, our dear old SVN repo is history and can enjoy retirement. All work shall continue with the new repo, the following days however should be dedicated to the cleanup steps of course.

That would be my preference too, but I want to hear Dilvish' and Geoffs opinion on that also.

Above you mentioned turning off the SourceForge feature/bug tracker and directing people to the GitHub issue tracker; if that's what you mean then yes that sounds right to me. If you mean turn off the GitHub issue tracker then I'm not understanding the reason to do that.

On a related note, are we going to leave the SDK and executable downloads at SourceForge or move them to GitHub also? (oh, I see now that was one of Vezzra's questions re releases.) I think the latter would be possible, but this is one area that SourceForge does appear to me to have better handling and reporting (but perhaps that's just a familiarity issue for me). Can anyone point us to a GitHub project that handles their executable releases through GitHub in a fairly good way, for us to see an example of what's possible?

I would slightly favor leaving the FO repository up as a read-only backup, but do not have a strong opinion on it.

If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

How do I claim commits on this new repository? It just lists "Geoff" as the author, and I can't see any email address to add to my git account to claim them as I think I did for the mirror repository, and hovering on the ? icon says the email address is invalid.

Also, is there a reason that freeorion/freeorion has 7685 commits when the SVN revision was 8050 before the import? I thought redoing the importing was supposed to preserve all the branch history as well, which the svn-mirror repository was missing?

Geoff the Medio wrote:How do I claim commits on this new repository? It just lists "Geoff" as the author, and I can't see any email address to add to my git account to claim them as I think I did for the mirror repository, and hovering on the ? icon says the email address is invalid.

I can't clone repo because my internet connection is bad today. Can you check Author in