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

Programming

Introduction to Version Control with Git

+ View more dates & times
  • Overview
    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

    AUDIENCE

    Software developers.

    PREREQUISITES

    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 cover basic Git operations as well as workflow. The labs allow you to practice the following skills:

     

    Lab 1 – 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.
  • Schedule
  • 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

  • FAQs
    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