Git Advanced

The Clearvision Git Advanced training course provides an understanding of advanced Git concepts and looks at configuration and functionality.

Audience:

This course is aimed at experienced Git users who want complete control over their repositories, code and history.

Prerequisites:

  • Access to laptop
  • Internet connection
  • Completion of Git Essentials

Objectives & Outcomes

By the end of the advanced course you’ll be an expert in all things Git.

You’ll have a deep understanding of Git objects, and their impact on your repository.

You’ll be able to manage and maintain a repository in the long term and understand if, and why, something has gone wrong.

You’ll learn complex Git collaboration techniques while also performing a number of advanced configurations.

Course outline:

Module 1: Git Internals

  • 1. Pre-requisites
  • 2. What this course covers
  • 3. Git infrastructure in detail
    • Objects
    • Folder structure
    • The index file

Lab Exercises

  • 1. Walk through folder structure
  • 2. Using plumbing commands to create objects.

 

Module 2: Housekeeping

  • 1. Repository size
  • 2. File System Check
  • 3. Pruning
  • 4. Filter-branch
  • 5. Garbage Collection

Lab Exercises

  • 1. Garbage collection
  • 2. Cleaning up data
  • 3. Recovering lost data

 

Module 3: Git Configuration

  • 1. Global
    • Environment Variables
  • 2. Local (per repository)
    • Git-config
    • The config file
  • 3. Attributes
  • 4. Alias

Lab Exercises

  • 1. Identify Settings
  • 2. Configure settings
  • 3. Configure Attributes
  • 4. Set up an Alias

 

Module 4: Identifying Content

  • 1. Finding Content
    • Git Describe
    • Git Grep
  • 2. Debugging
    • File Annotation
    • Git Blame
    • Bisect

Lab Exercises

  • 1. Identify the cause of a bug.
  • 2. Debug the code

 

Module 5: Advanced Collaboration

  • 1. Configuring remotes
  • 2. Refspecs
  • 3. Archives (send & receive)
  • 4. Patching
  • 5. Sub-modules
  • 6. Worktrees

Lab Exercises

  • 1. Setting up remotes
  • 2. Splitting up a repository
  • 3. Archiving
  • 4. Creating and applying patches

 

Module 6: Advanced Merging

  • 1. Rebase (skipped if following a fundamentals course)
  • 2. Dry-runs
  • 3. Cherry Picking
  • 4. Octopus Merges
  • 5. Selecting a strategy

Lab Exercises

  • 1. Rebasing
  • 2. Cherry Picking
  • 3. Performing an octopus merge

 

 

Other relevant courses

14. December
1 days
Classroom Virtual
15. December
1 days
Classroom Virtual
17. December
1 days
Classroom Virtual