DevOps Classroom Series – 25/Apr/2020

Distributed Version Control Systems (DVCS)


  • In DVCS all the nodes
    • will have the same version control software installed
    • Will have the full copy of the code locally
  • In DVCS we still use servers which is a node plus a Service to help other nodes get and submit the code
  • Advantage of DVCS over Client Server (Centralized Version Control Systems):
    • No single point of failure
    • All developers will send the changes made (changesets) and each changeset is version controlled rather than individual file, so if some functionality is not working due to some developers mistake, its easy to revert back
    • Developers can work in offline and only when they want to sync the code the need to be connected to the server
    • Performance is much better
    • Less Adminstration
  • Disadvantage:
    • If your project is very huge, and every developer having a full copy can be extra cost on storage
    • Are less performance when it comes to large binary files

Git Installation

  • Windows:
  • MAC:
    • If you have XCode, you already have git
    • Use Homebrew
    brew install git
  • Linux:
    • Ubuntu: sudo apt install git -y
    • Redhat: sudo yum install git

Practical Enterprise Scenario

  • You have a Project called as QT-Commerce for organization QT
  • We have developers who are working on coding and devops team which builds, packages and gives releases to testing team
  • Testing Team Uses the urls to test Application
  • To Host the code of QT-Commerce, Companies need
    • a Server
    • With GIt Installed
    • Some Daemon/Service with https/ssh configured
    • Periodic Backups have to be taken
  • QT for Version control system has the following options
    1. Can host the code in its own server managed by its admins
      • Find a Software to install on your server to Maintain Git
        • Gitolite
        • GitHub Enterprise
        • Git Lab
        • others Refer Here
    2. Go for companies which provide git server servcies
      • Find a Provider who maintains Git Servers (Paying monthly bills)
      • Some of the Providers provide free services for opensource projects.
  • For the Developers, DevOPs team and testers, they have to
    • Install git
    • Get the account in Git Server and access rights to the code

How are we going to Learn git

  1. We learn how to use git locally
  2. We learn how to sync with servers
  3. Advanced Topics of git
  4. How git works?


  1. Install Git as mentioned above
  2. Create a GitHub Account from here

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

About learningthoughtsadmin