Introduction to Version Control with Git Training

Answers to Popular Questions:

 
Yes, this class can be tailored to meet your specific training needs.
Yes, we provide consulting services.
Yes, group discounts are provided.

Course Description

 
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. - This Git training course has 7 hands-on Git labs that cover basic Git operations as well as workflow.
Course Length: 1 Days
Course Tuition: $470 (US)

Prerequisites

Basic computer (Windows or Mac or Linux) literacy

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

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.