I decided to attempt to figure out who has ever had commit access to Bitcoin Core's git repository and from when to when. I also posted this on Bitcointalk, but I will not link the thread due to the doxxing rule (that thread contains real names taken from the commit messages).
This list contains the git names (to avoid doxxing) of everyone who I can find evidence for ever having commit access to Bitcoin Core, the dates during which they had commit access, sources for all of this information, and reasoning for the access.
- satoshi, s_nakamoto: 1/3/09 – 9/13/11 Creator, first Lead Maintainer
- Sirius, sirius_m: 8/30/09 – 9/13/11 Creator of first SVN repo
- laszloh 8/4/10 – 9/13/11 Original OSX Builds and support
- gavinandresen: 10/11/10 – 5/2/16 Frequent contributor; later Lead Maintainer
- Dooglus: 1/21/11 – 3/31/11 Frequent contributor for some time
- sipa: 5/1/11 – present Frequent contributor
- jgarzik: 5/6/11 – present(?) Frequent Contributor
- laanwj, wumpus: 6/5/11 – present Frequent contributor; later Lead Maintainer
- tcatm: 9/19/11 – 5/31/12 Frequent contributor for some time
- gmaxwell: 2/11/12 – 12/17/15 Frequent contributor; Gave up commit access due to toxicity and drama from the community
- jonasschnelli: 11/13/15 – present Frequent contributor; given access after becoming GUI Maintainer
- MarcoFalke: 4/13/16 – present Frequent Contributor; given access after becoming QA/Testing Maintainer
-  The move to Github occurred before the last SourceForge commit, but the last SourceForge commit declares sourceforge as dead. Presumably those who only committed to SourceForge no longer had commit access after the move
-  Sirius was the one who created the original SVN repo on SourceForge.
-  gavinandresen was the Lead Maintainer from 2/23/11 until 4/7/14
-  I cannot find anything that suggests that jgarzik has given up his commit access or has had it revoked
-  laanwj is the current Lead Maintainer, having been given the position by gavinandresen on 4/7/14
-  jonasschnelli is currently the GUI Maintainer, having been given the position by laanwj on 11/13/15
-  MarcoFalke is currently the QA/Testing Maintainer, having been given the position by laanwj on 4/13/16
- Dates are Month/Day/year
- There may be people missing and dates may be slightly incorrect. These are all that I can determine by looking at old emails and the commit history. Please let me know if anything is incorrect
- The start date is determined by the first merge commit made by that person. The end date is determined by the date of the last merge commit made by that person or other announcements of commit access revocation.
After scrolling through nearly the entire git merges history, I have found a couple of interesting things.
Satoshi did not use a Version Control System originally. The releases and source code were originally in a rar file that was uploaded to bitcoin.org. Sirius had to setup the original SVN repository on SourceForge for him. This was then later migrated to GitHub by gavinandresen. Originally patches were authored by developers and then emailed to Satoshi, Sirius, or gavinandresen who then committed the changes to the source tree with the commit message containing the attribution, but not the actual commit itself.
Another interesting fact is that the giving out of commit access has become more strict. It is now a privilege held by those given maintainer positions and those whose privilege was grandfathered in (i.e. they had it previously and kept it). Previously it was simply given out to those who contributed frequently and revoked after they stopped contributing. his appears to be no longer the case, although there are still multiple people who can commit to the repository so that there is not any reliance on one person. The maintainers are still given to frequent contributors as the maintainers are frequent contributors to the set of functionality for which they are maintainers of. They received the positions because of frequent contributions to those functionalities.
Lastly, I could not find any evidence for Satoshi ever publicly announcing that gavinandresen was to be the Lead Maintainer after him. It seems that Gavin was already a frequent contributor and already had commit access for a while before Satoshi disappeared. After Satoshi disappeared and Sirius stopped contributing as much, gavinandresen simply took over the role as lead maintainer as he was the only frequent contributor with commit access.