With an aim to replace BitKeeper, Linus Torvalds created Git in 2005 to support the development of the Linux kernel. However, Git isn’t necessarily limited to code, any product or project that requires or exhibits characteristics such as having multiple contributors, requiring release management and versioning stands to have an improved workflow through Git.
Just as every solution or tool has its own positives and negatives, Git is also surrounded by myths. Alex Magana and Joseph Mul, the authors of Introduction to Git and GitHub course discuss in this post some of the myths about the Git tool and GitHub.
Git is GitHub
Due to the usage of Git and GitHub as the complete set that forms the version control toolkit, adopters of the two tools misconceive Git and GitHub as interchangeable tools. Git is a tool that offers the ability to track changes on files that constitute a project. Git offers the utility that is used to monitor changes and persists the changes.
On the other hand, GitHub is akin to a website hosting service. The difference here is that with GitHub, the hosted content is a repository. The repository can then be accessed from this central point and the codebase shared.
Backups are equivalent to version control
This emanates from a misunderstanding of what version control is and by extension what Git achieves when it’s incorporated into the development workflow.
Contrary to archives created based on a team’s backup policy, Git tracks changes made to files and maintains snapshots of a repository at a given point in time.
Git is only suitable for teams
With the usage of hosting services such as GitHub, the element of sharing and collaboration, may be perceived as a preserve of teams.
Git offers gains beyond source control. It lends itself to the delivery of a feature or product from the point of development to deployment. This means that Git is a tool for delivery. It can, therefore, be utilized to roll out functionality and manage changes to source code for teams and individuals alike.
To effectively use Git, you need to learn every command to work
When working as an individual or a team, the common commands required to allow you to contribute a repository encompass commands for
- initiating tracking of specific files,
- persisting changes made to tracked files,
- reverting changes made to files
- incorporating changes introduced by other developers working on the same project you are on.
The four myths mentioned by the authors provides a clarification on both Git and GitHub and its uses. If you found this post useful, do check out the course titled Introduction to Git and GitHub by Alex and Joseph.