
We're using GIT via GitHub and each day it seems I'm finding our something new and undesireable about the tool. I'm do not recommend it for mature software development. My development team wastes literally days in figuring out how to work with the repository. Most try to avoid any contact with it which is even more detrimental to team development.
GIT as a whole isn't driven for the SCM world. It's a developer centric version control tool which isn't bad but it doesn't support some of the most basic SCM needs.
For instance, GIT doesn't allow custom hook scripts in the repository (which would be the way I'd lock this down in Subversion). I wanted to have a hook script (again something very basic) that would check for a ticket number in the comment. Since Git repositories don't 'clone' the hooks area to the workarea, it's incapable of checking.
GitHub provides 'some' surface level admin capabilities although nothing like I could do with PVCS, Clearcase, Subversion or even CVS. You can use 'Team' membership to identify access to repositories (which you've declared are private). Through this you 'could' restrict permissions for write access.
Good Luck if you go down the path of choosing Git.
As a potential compromise (as we're forced to use this tool as a company prerogative), I'm currently evaluating using the Git-SVN bridging capability (git-svn) which incorporates using Git as a valid client to a SVN server, so your developers can use all the local features of Git and then push back to a Subversion server.