Git

Instead of using Subversion for developing MediaWiki, soon (March 2012) you'll use Git. See Git conversion for details.

Is MediaWiki migrating to Git?
Yes; see our plan for Git conversion for February and March 2012. There are some outstanding Git migration issues as to how to lay out the repositories and what effect it will have on some automated and semi-automated workflows.


 * Git/Guide - Basic guide to using git
 * Git/Workflow - The workflow for core and for any extensions or other tools that choose to use git, gerrit, git-review, etc.
 * Git/Conversion - The schedule for our Subversion-to-Git migration
 * Git/Conversion/issues - Outstanding Git conversion issues

Why use Git and git-svn instead of Subversion?
Git's better at branching and merging and allows us a more flexible workflow.

Right now you can try it out for your regular development work via a gateway. The major reason to use git-svn right now is because you like git more than Subversion. You'll wind up with a git repository that you can use like any other git repository. "git svn rebase" will fetch all commits and rebase your changes, "git svn fetch" will seemingly fetch much more including ridiculously long checkouts of new branches that you'll probably never look at, and "git svn dcommit" will commit your changes.

Everything is absurdly fast, as usual for git. Except for checking out updates from SVN. That's absurdly slow. As in "go get some coffee while you wait if you didn't rebase in the last few days". And if someone makes a new branch it takes approximately 1.47 eternities to check out with git svn fetch. I don't know why this is so slow, I asked in #git but they blamed it on SVN. Oh well. But you can use git.

If you just want to play, we've got a test repository converting  to git. You should be able to clone it with

git clone https://gerrit.wikimedia.org/r/p/test/mediawiki/core.git