Git – keeping track of things
Blog|by James Roberts|17 September 2019
Version Control
Keeping track of code changes – what has changed, by whom and when – is absolutely necessary for quality assurance and to ensure the software behaves as expected and delivers the correct results. Tools to assist developers in this task have been around for a very long time, for instance Microsoft Visual SourceSafe which is now discontinued although still being maintained. Other examples include the free Apache Subversion and Mercurial tools.
Modern version control systems make use of a repository to hold the source code and its variants. In it’s most basic form this could be a shared folder although a client server or distributed model is more usual.
Git
Git is one of the most widely adopted solutions that uses repos. It was developed by Linus Torvolds in 2005 for the development of the Linux kernel.
Unlike the client server model, Git adopts a distributed approach which enables each Git directory on every computer to be a full-fledged repository with complete history and full version tracking capabilities, independent of network access or central server. You can clone the entire repository without having to checkout of the current source code tip. Unless there is only a single copy of the repository, Git doesn’t have a single point of failure. Even with a centralised workflow, every user essentially has a full backup of the main server and any of these can be pushed up to replace the main server in the event of a crash or corruption. An almost endless number of workflows can be implemented on account of Git’s distributed nature and branching system.
For more information, see the Git website.
When version control isn’t enough
Tracking changes to the code is only part of the story however. The need to manage development teams and allow them to collaborate on projects has been a driving force behind a breed of dev solutions such as Microsoft Visual Studio Team Systems, MicroFocus StarTeam and the various components that are part of IBM’s Rational product set.
The increased velocity of Agile and CI/CD projects together with the greater number of remote participants has raised the need for comprehensive Software Configuration Management (SCM) products and services.
The challenges these seek to address extend beyond version control to include a broader spectrum of things that concern development projects such as task assignment, scheduling, what if scenarios etc. A major consumer for this is the open source community and it isn’t surprising that open source has played a significant role in developing the tools needed for the job such as GitHub.
GitHub
Owned by Microsoft since 2018, GitHub is an hosted environment for version control and source code management using Git. It also provides access control and collaboration features such as bug tracking, feature requests, task management and wikis for every project.
GitHub is a key part of Microsoft’s open source story and I will be writing a follow-up blog to delve deeper into this next time.
Contact Grey Matter
If you have any questions or want some extra information, complete the form below and one of the team will be in touch ASAP. If you have a specific use case, please let us know and we'll help you find the right solution faster.
By submitting this form you are agreeing to our Privacy Policy and Website Terms of Use.
James Roberts
Related News
Grey Matter Achieves Cyber Essentials and ISO 9001 Certifications
We are pleased to announce that we have achieved our Cyber Essentials and ISO 9001 certifications for another year. We want to do our due diligence as much as possible. And we can’t sell and promote the importance of cyber...
ACCU Conference 2025
1 - 4 April 2025 9:00 am - 4:00 pm GMT
We’re delighted to be a Gold Sponsor of the ACCU Conference 2025 in Bristol. It’s an event in the Southwest, so a little bit closer to home than usual for us. What is ACCU? The ACCU Conference, originally focused on...
Veeam Kasten v7.5: Revolutionising Kubernetes Backup and Recovery
Veeam has announced the release of Kasten v7.5, the latest version of its industry-leading Kubernetes backup and recovery solution. This new release brings significant advancements in scale, performance, security, and ecosystem coverage, empowering your organisation with brilliant resilience for your...
From Resolutions to Reality – Achieve your Creative Goals with Adobe
New year, new skills. Here's your list of Creative Resolutions to make 2025 your most creative year yet with Adobe Creative Cloud.