Title: GIT TUTORIAL FOR BEGINNER
1- Git Tutorials for Beginners Introduction to
Version Control - Version Control
- Version Control Tools
VERSION CONTROL
- What is Version Control why is it needed?
- Version control software is an essential part of
the modern software teams professional
practices. It provides you with many
capabilities, such as - Maintain multiple versions of code.
- An ability to go rollback to previous version.
- Developers can work in parallel.
- Audit traceability with clear picture on whom,
when, where and what are the changes. - Synchronize the code.
- Copy/Merge/Undo the changes.
- Find out the difference between versions.
- Provides full backup without occupying much
space. - Review the history of the changes.
- Capable for both small and large scale projects.
- Ability to share and use the code amongst
remotely located developers. - Version control systems are a category of
software tools that help a software team manage
changes to artifacts over a period of time. With
version control, multiple versions of the same
file can be easily maintained and any specific
version can be recalled instantly. - Software developers working in teams are
regularly creating new and updating the existing
source code. - The code for a project, application or any
software component is typically structured in a
folder structure or a file tree. Suppose, a
developer on a particular team is working on a
new feature while another developer fixes an
unrelated bug by changing the code, each
developer can update several parts of the file
tree. There will surely be consistency issues. - Version control helps teams resolve these kinds
of problems, by keeping a track of every single
change made by each contributor and helps prevent
conflict issues. We all probably have, at some
point, figured out different ways to manage
multiple versions of a file by adding suffixes or
numbers and then deal with a new final version,
in the end. For example commenting out certain
code blocks to temporarily disable a
functionality, without deleting it, fearing it
could be of use later. Version control is the
panacea in such situations. - Types of Version Control
- There are two types of VCS
2Each programmer can extract or update their
workstations with the data present in the
repository or can make changes to the data or
commit in the repository. Every operation is
performed directly on the repository.
- It may seem pretty convenient to maintain a
single repository, but there are some major
drawbacks in the approach, like - It is not locally available, so you always have
to be connected to a network to perform any
action. - Given everything is centralized, if the central
server gets crashed or corrupted, the entire data
of the project will be lost. - Distributed VCS is the saviour in such scenarios.
Let us understand what is Distributed VCS. - Distributed VCS
3Distributed Version Control systems do not depend
on a central server to store all the versions of
a project file. In Distributed version control
system, each contributor has his own local copy
or clone of the remote repository, so everyone
maintains their own local repository which
contains all the files and metadata present just
like the main repository.As you can see in the
above diagram, every programmer maintains their
own local repository, which is actually a copy of
the central repository on their local machine.
They can commit and update their copy without any
intrusion. They can update their local repository
with fresh data from the central server by an
operation called pull and can commit changes
from their repository to the main repository by
an operation called push.
Distributed VCS gives you the following
advantages
4- All local operations (except push pull) are
very quick because the tool only needs to access
the local system, not a remote server. Hence, you
are not always dependent on an internet
connection. - Committing a new set of changes can be done
locally without manipulating the data on the mai
n repository. Once you have a group of changes
ready, you can push them all at once. - Since every developer has a replica of the
project repository, they can share changes with
each other and do a peer review before updating
the main repository, with the code commits. - If the central server gets crashed at any point
of time, the lost data can be easily recovered
from any one of the contributors local
repositories.
Workshop on Certified DevOps Foundation 60 USD
?
Workshop on Certified DevOps Professional 199 USD
?
Get DevOps Certified Buy Certifications
?