top of page
Writer's picturevP

What is Git?

Git is the most popular Distributed version control system that developers use. It is a free and open source version created by Linus Torvalds in 2005 for the development of the Linux kernel.


It helps you track different versions of your code, who made the changes in the source code and collaborate with other developers allowing changes by multiple people to all be merged into one source. It also helps in -

- Push local updates to the project

- Managing projects with Repositories

- Clone a project to work on a local copy

- Pull the latest version of project to local copy

- Control and track changes with staging and committing

- Branch and Merge to allow for work on different parts and versions of a project


Git is software that runs locally. Your files and their history are stored on your computer. You can also use online hosts (such as GitHub or Bitbucket) to store a copy of the files and their revision history. Having a centrally located place where you can upload your changes and download changes from others, enable you to collaborate more easily with other developers. Git can automatically merge the changes, so two people can even work on different parts of the same file and later merge those changes without losing each other’s work!


In addition to being distributed, Git has been designed with performance, security and flexibility in mind.


Performance -

If compared with the other alternatives available, the performance characteristics of Git are very strong. Committing new changes, branching, merging and comparing past versions are all optimized for performance.


Being distributed enables significant performance benefits as well. For example, let's assume a developer makes changes to a source code, adding a feature for the upcoming 2.0 release, then commits those changes with descriptive messages. Then works on a second feature and commits those changes too. Naturally these are stored as separate pieces of work in the version history. A developer then switches to the version 1.2 branch of the same software to fix a bug that affects only that older version. The purpose of this is to enable team to ship a bug fix release, version 1.2.1, before version 2.0 is ready. Developer can then return to the 2.0 branch to continue working on new features for 2.0 and all of this can occur without any network access and is therefore fast and reliable. When developer is ready to send all of the individually committed changes to the remote repository, he/she can "push" them in one command.


Security

Git has been designed with the integrity of managed source code as a top priority. The content of the files as well as the true relationships between files and directories, versions, tags and commits, all of these objects in the Git repository are secured with a cryptographically secure hashing algorithm called SHA1. This protects the code and the change history against both accidental and malicious change and ensures that the history is fully traceable.


With Git, you can be sure you have an authentic content history of your source code.


Flexibility

One of Git's key design objectives is flexibility. Git is flexible in several respects: in support for various kinds of nonlinear development workflows, in its efficiency in both small and large projects and in its compatibility with many existing systems and protocols.


Git has been designed to support branching and tagging as first-class citizens (unlike SVN) and operations that affect branches and tags (such as merging or reverting) are also stored as part of the change history. Not all version control systems feature this level of tracking.


Now that we understand what version control is, what Git is and lets get started with installing Git and learn git commands.


Thank you for reading!


*** Explore | Share | Grow ***

15 views0 comments

Comentários

Avaliado com 0 de 5 estrelas.
Ainda sem avaliações

Adicione uma avaliação
bottom of page