Search our courses
Training

This Introduction to Version Control with Git one-day 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.

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.

Introduction to Version Control with Git

Course Code

GTGIT

Duration

1 Day

Course Fee

POA

Accreditation

N/A

Target Audience

  • Software developers

Attendee Requirements

  • Basic computer (Windows or Mac or Linux) literacy

Expand all

Course Description

This Introduction to Version Control with Git one-day 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.

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

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

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

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

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

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

Chapter 7. Rewriting History

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

Chapter 8. Examining History

  •     Looking at History
  •     Log
  •     Blame
  •     Bisect

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. Basic Git Operations

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

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

Learning Path
Ways to Attend

Attend a public course, if there is one available. Please check our Schedule, or Register Your Interest in joining a course in your area.
Private onsite Team training also available, please Contact Us to discuss. We can customise this course to suit your business requirements.

Private Team Training is available for this course

We deliver this course either on or off-site in various regions around the world, and can customise your delivery to suit your exact business needs. Talk to us about how we can fine-tune a course to suit your team's current skillset and ultimate learning objectives.

Private Team Training | Contact us

Technical ICT learning & mentoring services

Private Team Training

Our instructors are specialist consultants with vast real world experience and expertise allowing them to design and deliver client-focused courses for your organisation.

Learn more about our Private Team Training

What Our Clients Say

“Given the breadth of the course, I think it was very well structured and organised, I got a lot
out of it.”     

 

JVM Tuning - Bespoke Course

Live Online - May 2020

 

“This was an excellent course and was lots of fun to attend. Instructor started with basic intro to
containerization, then explained Kubernetes and the different components (Container
engine, orchestrator, control plane) which all made sense because of the containerization
intro. The parts of the course layered on top of one another to give a good understanding of
Kubernetes.”

 

Kubernetes for App Developers - GTLFKAD

Live Online - Nov 2020

 

“Really enjoyed the course, it has been an eye opener on opportunities to steer how we approach the cloud from a IT Service Management perspective.”

 

Professional Cloud Service Manager - GTC13

Live Online May 2020

 

''Fantastic course, looking forward to applying this in my work and home life. Excellent, practical approach, very motivational. I think the entire company should attend training.''

 

Being Agile in Business - GTBAB

Sept 2019

“The instructor was great! I didn't expect such a good level of teaching with what some may
consider a dry subject. This was simply great!”  

 

Linux LPIC-1 - GTU8

Live Online - August 2020

 

"Intelligence is the ability to avoid doing work, yet
getting the work done"

Linus Torvalds, creator of Linux and GIT

Technical ICT learning & mentoring services

About GuruTeam

GuruTeam is a high-level ICT Learning, Mentoring and Consultancy services company. We specialise in delivering instructor-led on and off-site training in Blockchain, Linux, Cloud, Big Data, DevOps, Kubernetes, Agile, Software & Web Development technologies. View our Testimonials

Download our eBrochure
Our Accreditation Partners
  •  
  •  
  •  

 

Upcoming Courses

Kubernetes Administration

15th - 18th Nov 2021

Live Online

This Kubernetes Administration Certification training course is suitable for anyone who wants to learn the skills necessary to build and administer a Kubernetes cluster

Learn More

LPIC-1 PART 1

26 - 29  October 2021 

16 - 19 November 2021

Live Online

This Linux certification training course teaches in-depth skills in the basics of Linux Administration.
 

Learn More

PROFESSIONAL CLOUD SERVICE MANAGER

19th - 21st October

23rd - 25th November

 

Live Online

The Cloud Service Manager course enables participants to design and deliver cloud services. Exam prep on day 3.

Learn More

 INTRO TO PYTHON 3

December 14 - 16 2021

Live Online        

A comprehensive introduction to the core syntax and functions provided by Python, including coverage of its object-oriented and functional programming features.

Learn More

Newsletter

Stay up to date, receive updates on scheduled dates, new courses, offers, and events.

Subscribe to our Newsletter