Git Version Management

Pulasthi Aberathne
4 min readApr 10, 2020

--

Software developers face so many issues when it comes to configuration management. Different people are working on the same project and someone has to take responsibility for the changes. To ease out these cases the git takes place in the software industry.

History…

History of Git links back to one of the greatest developer who named Linus Torvald, the legendary developer who developed the Linux Kernal. The Git platform was created to make contributions all around the world and make one massive forum for developers and people who are interested in software development.

How Git works…?

Git is based on the TruncBase Development Technique which makes branches of the project and develop them separately and merge in the end. Imagine you are planning to develop a software product for a customer which handles a large number of data in their business. What we usually do is we can select any Source Code Management System and develop an MVP using that product and you have to deal with a lot of management issues in this scenario. The difference, when you are using git, is you can easily deal with the files and basic configurations without any major conflicts.

Why Git Now…?

Git becomes most popular within the last couple of years. The main reason, previously in the industry, mostly used Development Method is the Centralized Version Control System which simply keeps a copy of the repository in an online server and developers had to connect to the server and get the files and work with them. CVC makes issues for the developers because they couldn’t work on the project remotely and they have to e connected all the time. Resolving all these mismatches the Distributed Version Control System introduced and that helps multiple developers to work on the same file and synchronize them together. It keeps copies of the original repository in the servers and multiple computers and developers can update and synchronize them as they need. Because of this case, the Git become more popular in the community.

Git and supplementary products…

Git is handled by the command line or the kernel in the operating system. Therefore few organizations have introduced their GUIs for the Git. BitBucket, GitLab and Git Hub are a few examples. Out of these Git Hub is the most used platform for Git. These platforms help to work with the online repositories of the organizations and for work in the remote repositories which are in our computers we can use Eclipse, VSCode, Visual Studia and other recognized IDEs.

GUIs for the Git Repository Handling

Git Operations…

There are lots of command operations available for git. Five of them are basic and essential for working with Git.

Basic Git Commands

Basic operations are such as follows,

Clone: Creates a copy of the connected repository and save it in the computer for the developer.

Status: Pops out the uncommitted files in the repository.

Add: Adds new files for the got remote repository.

Commit: Commit the changes which are been made in the files to the repository.

Push: Push in all the files in the remote repository to the online repository.

Pull: Pull the repository from the connected online server and make necessary changes in the remote repository.

During this push and pull operations by conflicts might occur while working in the same file in multiple places. Git automatically detects the issues arise and alert the user about them.

Conflicts are highlighted and recognized by Git

What is Fork…?

Imagine you are working as a team and your team share a repository in git and work on that. If you have issues you can’t resolve in the project you can ask outside parties to help. For that they can use the fork operation in git. That allows the outsiders to create and edit files in the repository and propose them to the repository and the team can either accept it or ignore the suggestions.

Conclusion…

There are various ways to deal with configurations and versions and the more efficient and popular way is to deal with it using Git. It makes the opportunity to create the project in a more futuristic manner and git reduces conflicts for the developers.

--

--

Pulasthi Aberathne

I am Software Engineer. A visionary who believes the psychological strength over physical empowerment.