We're offering 20% off September Live Online classes! See which courses are applicable.   |   Details >

AccountIcon BigDataIcon BlogIcon default_resource_icon CartIcon checkmark_icon cloud_devops_icon computer_network_admin_icon cyber_security_icon gsa_schedule_icon human_resources_icon location_icon phone_icon plus_icon programming_software_icon project_management_icon redhat_linux_icon search_icon sonography_icon sql_database_icon webinar_icon

Search UMBC Training Centers


Introduction to Version Control with Git

Group Training + View more dates & times


This one-day Git training course teaches developers what Git is and how to use Git to manage software versions effectively.

The Git training course begins with a review of the benefits of version control in software development.  We then introduce Git, with emphasis on the multiple workflow possibilities, and the paradigm shift required to use distributed version control effectively.

Who Should Take This Course


Software developers.


Basic computer (Windows or Mac or Linux) literacy.

Why You Should Take This Course

This Git training course has 7 hands-on Git labs that are outlined at the bottom of this page. The labs cover basic Git operations as well as workflow. The labs allow you to practice the following skills:

Lab1 – Starting Out With Git

1. Install Git on windows
2. Create a git repository
3. Perform basic git functions on the repository

Lab 2 – Branching, Merging and Working with Remotes

1. Clone an existing repository
2. Create a branch
3. Merge a branch onto another branch.

Lab 3 – Experimenting with Workflows

1. Use a centralized repository in the same way as you would with non-distributed
version control system
2. Use a “pull-request” style of development, as is common with git.

Lab 4 – Using the GitFlow Workflow

In this lab you will explore the GitFlow workflow to create features, releases, hotfixes, and various other types of branches.

Lab 5 – Rebasing and Rewriting History

1. Use ‘git rebase’ to move work from one branch to another
2. “Squash” a commit using the interactive rebase tool.

Lab 6 – Git Submodules

In this lab, we’ll take a look at submodules in Git. Submodules provide a way to use a git repository as a directory within another repository.

Lab 7 – (Optional) GitFlow Workflow With the GitFlow Extensions

In this lab you will explore GitFlow feature, release, hotfix, and various other options.

Web Age Git Classes are delivered in traditional classroom style format. Online Git Training is also available in a synchronous instructor led format.

Course Outline

Chapter 1. Introduction to Version Control

  • What is Version Control
  • What is Version Control (cont’d)
  • “Undo” Capability
  • Collaboration
  • Collaboration (Cont’d)
  • Communication and Sharing
  • Auditing and Tracking
  • Release Engineering, Maintenance, SDLC
  • Diagnostics
  • History of Version Control
  • What is Version Control (cont’d)
  • Distributed Version Control
  • Summary

Chapter 2. Introduction to Git

  • What is Git
  • Git’s Design Goals
  • Git’s Design Goals (cont’d)
  • Branching and Merging
  • Branching and Merging (cont’d)
  • Centralized Version Control
  • Distributed Version Control
  • Git Basics
  • Git Basics (Cont’d)
  • Git Basics (cont’d)
  • Getting Git
  • Git on the Server
  • Git Repository Managers
  • Git on Somebody Else’s Server
  • Summary

Chapter 3. Basic Git Operations

  • Using Git
  • Definitions
  • Definitions (cont’d)
  • Repository (cont’d)
  • Definitions (cont’d)
  • Commit
  • Commit (continued)
  • How to Think About Commits
  • Viewing History
  • Configuring Git
  • Configuration Scope
  • User Identification
  • User Identification (cont’d)
  • GPG Signing
  • Gnu Privacy Guard
  • GPG Basics
  • GPG and Git
  • .gitignore
  • Other Useful Configurations
  • Summary

Chapter 4. Branching, Merging and Remotes

  • Branching
  • Branches in Git
  • Branches in Git (cont’d)
  • Merge
  • Merge (cont’d)
  • Fast Forward Merge
  • –no-ff
  • More Than One Repository
  • Working with Remotes
  • Fetch and Pull
  • Push
  • Pull Requests
  • Tagging a Commit
  • Lightweight Tags
  • Annotated Tags
  • Sharing Tags
  • Checking Out a Tag
  • Summary

Chapter 5. Git Work Flows

  • Work Flows
  • Local Work Flow
  • Feature Branches
  • Centralized Workflow
  • Integration Manager Work Flow
  • Integration Manager Work Flow (cont’d)
  • Other Work Flows Are Possible
  • Summary

Chapter 6. Introduction to GitFlow

  • What is GitFlow
  • Benefits
  • How GitFlow works?
  • How GitFlow works? (Contd.)
  • What is GitFlow? (Contd.)
  • How GitFlow works? (Contd.)
  • GitFlow Extension
  • Initializing GitFlow
  • Features
  • Release
  • Hotfixes
  • Summary

Chapter 7. Rewriting History

  • Rewriting History
  • Squashing Commits
  • Squashing Commits (cont’d)
  • Rebase vs Merge
  • Amending Commits
  • Reset
  • Summary

Chapter 8. Examining History

  • Looking at History
  • Log
  • Blame
  • Bisect
  • Summary

Chapter 9. Submodules and Subtrees

  • Submodules
  • Dependency Management
  • Dependency Management (cont’d)
  • Git Submodules
  • Adding a Submodule
  • .gitmodules
  • Cloning a Repository with Submodules
  • Updating Submodules (Initial)
  • Updating Submodules (Ongoing)
  • Subtrees
  • Subtrees – How They Work
  • Subtrees
  • Conclusion

Chapter 10. Configuring Git

  • Advanced Configuration
  • Advanced Configuration Variables
  • Environment Variables
  • Aliases
  • Git Hooks
  • Summary

Lab Exercises

Lab 1. Starting Out With Git
Lab 2. Branching, Merging and Working with Remotes
Lab 3. Experimenting with Workflows
Lab 4. Using the GitFlow Workflow
Lab 5. Rebasing and Rewriting History
Lab 6. Git Submodules
Lab 7. (Optional) GitFlow Workflow With the GitFlow Extensions

Is there a discount available for current students?

UMBC students and alumni, as well as students who have previously taken a public training course with UMBC Training Centers are eligible for a 10% discount, capped at $250. Please provide a copy of your UMBC student ID or an unofficial transcript or the name of the UMBC Training Centers course you have completed. Online courses are excluded from this offer.

What is the cancellation and refund policy?

Student will receive a refund of paid registration fees only if UMBC Training Centers receives a notice of cancellation at least 10 business days prior to the class start date for classes or the exam date for exams.

Contact Us