A version control system is simply defined as software that records changes made to files over a period of time. Some examples of version control systems are Git, GitLab, PerForce, Apache Subversion, AWS CodeCommit, and many more. In this article, I will be focusing on Git/Github.
Git is a type of version control system that allows its users to track, store, and manage changes made to files stored in your local machine or in the cloud.
GitHub is a code hosting service provider that allows you to version control using Git. Github serves as some sort of front end to git. Git is only accessible through the command-line interface ( CLI ). Github is user-friendly and adds features of git along with its own features to make it more productive. From here on I will be focusing on Github
What Problems does Git solve?
Prior to Git, code was stored on the local system or personal computers and those code versions were only stored on that particular system, and if by any means the system crashes it was almost impossible to retrieve all the files at the last save point. Git created a solution to that by enabling developers to store their code in the cloud. There are other problems git solve namely;
Collaboration
Git helps large to small-sized teams work together on open source projects, individuals can add, remove and modify open source projects from the comfort of their homes.
Track Changes
Git helps to keep track of the various changes made to your codebase. It allows developers to keep track of the constant revisions to their code. Developers are able to know what changes have been made when it was made and who made the change.
Rollbacks Git allows you to roll back to a previous version of the code. This is especially useful when a code change introduces an error.
Conclusion I just explained Git and GitHub as a version control system, in the next article I will be discussing basic git terminologies and commands.