Microsoft has announced that it has now moved 90% of its engineers over to using the open source ‘Git Version Control System’ (VCS) for developing the Windows Operating system.
What is Git?
Git is a kind of software that is used in source code management to help manage a project by tracking changes to computer files, and helping co-ordinate the work on those files among multiple people. Developed in 2005, its benefits are that it is fast, ensures data integrity, and keeps things organised, even though there may be distributed, non-linear work by many different parties on the same project.
What Was The Problem?
Microsoft engineers had previously been using software called SourceDepot, but Microsoft’s large-scale development needs, the need to combine multiple different repositories (data structures), and the huge size of many of the files that Microsoft developers were dealing with meant that SouceDepot was longer deemed as being up to the job.
It is hoped, therefore, that Git will be the right choice for effectively managing the vast amount of (changing) code that the Windows Operating System uses as its source, as well as minimising any shared performance issues.
The Solution – A Customised Version of Git
Microsoft has, therefore, moved 90% of its engineers (in only a 3 month time period) over to using a customised version of GIT. The customisation involved making changes to algorithms and building-in greater elasticity to accommodate the large file sizes that developers need to work with, and to manage the bandwidth issues that could arise from the distributed nature of Microsoft’s development team.
The resulting customised system has been dubbed the ‘Git Virtual File System’ (GVFS), and its superior ability to differentiate between which files are available to use locally and which ones aren’t means that status commands that would have taken hours can now take seconds.
Location Less Of An Issue
With the new system, the location of an engineer will be much less of an issue thanks to the large amount of bandwidth (provided by Azure), and proxy servers that clone every 25 seconds.
Not All Plain Sailing
Reports from some technical commentators have emerged that focus on the results of an internal survey which showed that 28% of the 251 engineer staff aren’t happy with the change, with reasons reported as being that some development tools don’t support Git, there is a need to learn how the new process works, and performance is not as good as was expected.
Concerns have also been expressed about the wisdom and compatibility of using an open source code for a closed source operating system.
What Does Mean For Your Business?
As many businesses are users of the Microsoft Operating System, the fact that its source code is better organised and allows for faster work and updating by multiple developers should translate into fewer problems in using the OS, better and faster fixes if there are problems, and more features being more easily developed and introduced. Other developers and third party organisations stand to benefit from the fact that the code for the news GVFS being made available under the MIT license on GitHub and open for community contributions.