Responding to user demand, Microsoft now allows projects using its CodePlex open source code repository to use the increasingly popular Git version control system built by Linux creator Linus Torvalds.
"Admittedly, when we launched CodePlex, we never expected that at some point we would be running a source control system originally invented by Linus Torvalds to use for the Linux kernel," wrote CodePlex program manager Mark Groves, in a blog statement announcing the newly added Git support. "Though I would also say, nobody would have thought the open source ecosystem would be as important to Microsoft as it has become now."
Prior to Git support, CodePlex users already had a number of version control systems to choose from. Some users prefer a centralized approach, while others find a distributed approach more useful, Groves said. CodePlex offers Mercurial, a DVCS (distributed source control system) that allows different parts of a code base to reside in different locations. CodePlex also offers Microsoft's own TFS (Team Foundation Server) for storing code in a central location. TFS provides connectivity for the clients of Subversion, another open source version control system.
Despite the inclusion of Mercurial, CodePlex users have overwhelmingly requested that the service support Git, Groves said. In an online poll, CodePlex users ranked the Git support as the new feature they would most want to see.
When users start a new CodePlex project, they are given the choice of which version control system to use. When users choose Git, they then download the client software and create an account. After they write some code, they can command Git to grab the code and upload it to the repository.
Git, like Mercurial, offers a "fork and pull-request" workflow, in which developers can check out a section of code, make changes, and submit them to other users for approval. "The fork/pull request workflow is a key accelerator to many open source projects," Groves said, adding that CodePlex would add additional support for this workflow in the future.
Torvalds, along with a number of other developers, created Git in 2005, after becoming increasingly frustrated with other source control systems, such as BitKeeper, Subversion, and CVS. Torvalds concentrated on making a highly efficient distributed system, one that can quickly merge new changes from many contributors into a large codebase. Today, Git is one of the most widely used open source control systems, managing code for such large projects as Linux, Android, Perl, Ruby on Rails, Eclipse, Gnome and the Debian Linux distribution.
Microsoft launched CodePlex in 2006 to host third-party, open-source projects. It currently hosts over 28,000 projects, many of them written to work with Microsoft operating systems and programs. The portal includes such programs as the Skype Voice Changer, the Ajax Control Toolkit, and the PHPExcel editor.