Version Control With Git

Version Control With Git
=====

—–
Course Id: DEVO-VGIT
Duration: 32 Hours

Overview
—–
* This training course teaches software developers how to use Git
* Participants will understand version control and Git fundamentals

Pre-Requisites
——-
* Awareness of version control software is helpful
* Programming experience in teams

Training Objectives
——
All participants learn to:
* Understand Git and Git fundamentals
* Review and edit the commit history
* Improve your daily workflow
* Branch, merge, and use remote repositories
* Use Git as a debugging tool
* Learn advanced Git concepts such as object types and bundles

Course Structure
—–
* We provide more focus on hands-on in our technical courses (typically 80% hands-on/20% theory)
* Students get the capability to apply the material they learn to real-world problems

Materials Provided
—–
* All participants receive
* PDF of slides
* PDF of handson
* Access to instance with lab environment

Software Requirements
—–
Any of the following
* Any current internet browser
* vnc client
* rdp client

Hardware Requirements
—–
* Processor: 1.2 GHz+
* RAM: 512 MB+
* Disk space: 1 GB+
* Network Connection with low latency (<250ms) to Internet

## Daywise Course Outline
—–
## Day 1
—–
* Unit 1 : Introduction to SCM (Source Code Management)
* Unit 2 : Git Basics
* Unit 3 : Reviewing Commit History
* Unit 4 : Daily VCS Workflow

## Day 2
—–
* Unit 5 : Branching
* Unit 6 : Merging
* Unit 7 : Remote Repositories
* Unit 8 : Centralizing and Controlling Access

## Day 3
—–
* Unit 9 : Rebasing
* Unit 10 : Resetting Trees
* Unit 11 : Including External Repositories
* Unit 12 : Git as a Debugging Tool

## Day 4
—–
* Unit 13 : Workflow Management
* Unit 14 : Advanced Concepts

## Detailed Outline
—–
Unit 1 : Introduction to SCM (Source Code Management)
* Principles of Change Management
* Undoing Changes
* Audit Trails and Investigations
* Reproducible Software

Unit 2 : Git Basics
* Introduction to Git
* Trees and Commits
* Configuring Git
* Adding, Renaming, and Removing Files

Unit 3 : Reviewing Commit History
* Reviewing the Commit History
* Revision Shortcuts
* Fixing Mistakes

Unit 4 : Daily VCS Workflow
* Simplifying Common Commands with Aliases
* Ignoring Build Artifacts
* Stashing Changes for Later Use

Unit 5 : Branching
* Branching Basics
* Listing Differences Between Branches
* Visualizing Branches
* Deleting Branches
* Tagging

Unit 6 : Merging
* Merging Basics
* Merge Conflicts
* Merging Remote Branches

Unit 7 : Remote Repositories
* Remote Repositories
* Synchronizing Objects with Remotes
* Tracking Branches

Unit 8 : Centralizing and Controlling Access
* Introduction to GitLab
* Git Repositories on GitLab
* Daily Workflow

Unit 9 : Rebasing
* Rebasing Basics
* Rebasing with Local Branches
* Rebasing with Remote Branches
* Interactive Rebasing
* Squashing Commits
* Getting Out of Trouble

Unit 10 : Resetting Trees
* Introduction to Resetting
* Resetting Branch Pointers
* Resetting Branches and the Index
* Resetting the Working Directory
* Making Good Use of the Reset Command

Unit 11 : Including External Repositories
* Submodules
* Subtrees
* Choosing Between Submodules and Subtrees

Unit 12 : Git as a Debugging Tool
* Using the Blame Command to See File History
* Performing a Binary Search

Unit 13 : Workflow Management
* Interactively Staging Changes
* Branch Management

Unit 14 : Advanced Concepts
* Git Object Types
* Content-Addressable Names
* Pack Files
* Bundles

Scroll to top