Git Is 15 Years Old: What Now?
Linus Torvalds first released his Git version control software 15 years ago, on April 7, 2005, in an effort to foster a more creative spirit in Linux kernel development. Since then, Git’s role in software development has emerged well beyond its roots as a version control system and a software repository. It’s become a cornerstone of how software is developed today by distributed teams and open source developers around the world.
In this The New Stack Makers podcast, we spoke with three Git thought leaders about Git’s roots, its present context and its future. We learned that despite its present-day success, Git’s future is not certain.
Guests on this episode are:
- Jason Warner, CTO, GitHub.
- Cornelia Davis, CTO, Weaveworks.
- Sid Sijbrandij, Co-founder and CEO, GitLab.
For many, the possibilities that Git offers are exciting, both on an individual and macro level when many parties must collaborate on a project, particularly for CI/CD. You can use Git to upload personal pet projects, such as whether you want to share a simple code sample or just documentation for something not necessarily related to software. For a large enterprise, developer teams can collaborate on application development concurrently whether they are scattered around the world or separated by only cubicle walls.
Git is 15 Years Old: What Now?
However, it is easy to forget why Git and version control have become so universally adopted. Tracing back at its beginning 15 years ago, Davis described Git’s evolution beyond concepts of locking and trust for source code control systems.
“Safety is important, but we thought the way that we could achieve safety was through rigorous control. And now we’ve kind of opened our minds and said, ‘Well, actually, are those two things? Do we? Are they mutually exclusive? Can I actually loosen the controls and still be safe?'” Davis said. “I think we’ve proven that the answer is ‘yes.’ But we couldn’t have done that with the old source code control systems because the primitives weren’t there, things like… having the full state stored in a particular instance, a snapshot, if you will. Those types of things allow us to have a safety while not having this very heavy-handed control.”
Branching is also a key function that helps explain Git’s massive adoption. Warner explained the significance of branching by relating it to how Google docs work now. You can see which users have made changes to the document previously in different versions. The prospect of making changes to a document without knowing the history of previous versions is scary. “Branching and Git is really, really important to where we were 15 years ago, and cheap, easy branches revolutionized the way people collaborated on software,” Warner said. “And we take that for granted today — but 15 years ago, there was nothing like it.”
However, all of the great things Git offers and its prevalence in the development community does not necessarily mean it is necessarily locked in to meet all computing and IT needs of the future. Stateless data management is a good example.
“Version controlling data is one of those things that is still very, very hard. And I think now with the advent of ML and AI, it’s getting more and more important,” Sijbrandij said. “What is the data we use to train it? What is the input and output data and what is the output data and version of the model that ran on it?” he said. “I see a lot of tooling, but I think there’s also something fundamental on the file level that needs to change… We need better version control for data because data is just as important as code.”
Indeed, Warner said the file system in a Git context must change, particularly its abstraction, “and how we think of it. It’s not just the versioning of the data itself, but it’s how it’s applied and particularly at scale at large sizes is going to become a real issue,” Warner said. “So, the concepts, if they can be applied, I think are going to be interesting. And I hope somebody does advance it because that is still kind of a pain point for the industry.”
GitLab is a sponsor of The New Stack.
Feature image via Pixabay.