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
Intel oneAPI 2024.1 A Milestone Release
What’s new in Intel oneAPI 2024.1 The 2024.1 release of Intel® Software Development Tools marks a major milestone for developers AND the entire software industry: the Intel® oneAPI DPC++/C++ Compiler has become the first compiler to fully support the SYCL...
ISV Partner Day Shortlisted for CRN Sales & Marketing Award
ISV Partner Day has been shortlisted for "Best Customer Event" at the CRN Sales & Marketing Awards
Microsoft 365 and Azure Security Tools: Microsoft Intune
In the second video in our series of short videos discussing Microsoft 365 and Azure security tools and concepts, our Microsoft experts cover off all you need to know about Microsoft Intune! Intune is a robust cloud-based solution to safeguard...
Women in Tech: A New Era | Roundtable
Fri 21 June 2024 5:00 pm - 11:30 pm BST
Get ready to shake it off (and network like nobody’s watching) because we’re hosting an exciting exclusive Women in Tech event with ESET that you won’t want to miss out on. Join us and share feedback, experiences and insights with...