GIT TUTORIAL FOR BEGINNER - PowerPoint PPT Presentation

About This Presentation
Title:

GIT TUTORIAL FOR BEGINNER

Description:

GIT TUTORIAL FOR BEGINNER – PowerPoint PPT presentation

Number of Views:73
Slides: 5
Provided by: devuni
Tags: github

less

Transcript and Presenter's Notes

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

2
Each 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

3
Distributed 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
?
Write a Comment
User Comments (0)
About PowerShow.com