Advanced Git

This course will take your Git knowledge to the next level. It fuses a deeper look into how Git really works with a range of carefully selected practical techniques and advice on best practices. You'll come out of it with a better understanding of Git, a firmer sense of how to solve problems and create workflows, and a bunch more tools in your version control arsenal.

  • Git
  • Workflows

Target audience

People who want to take their knowledge of Git to the next level.


You have already taken our Introduction to Git course, or feel that you have a good grasp of all of the things that it covers.

Day 1


  • A DAG refresher
  • Blobs, trees, and commits
  • Why SHA-1s and not version numbers
  • Specifying revisions and commit ranges
  • Viewing old revisions of files
  • The index, revisited
  • Atomic commits
  • Valuing the version history

Branches, shoots, and leaves

  • Creating, moving between and deleting branches
  • HEAD and detached HEAD mode
  • Working with remotes
  • Remote branches and refspecs
  • Tags, lightweight and annotated
  • Tags and remotes
  • Tags and branches under the hood
  • The describe command

All your rebase...

  • A merging refresher
  • pull = fetch + merge
  • The undesirability of merge commits
  • Rewriting history
  • The push/rebase tension
  • cherry-picking commits
  • Interactive rebasing

Wrappers and graphical tools: a quick overview

  • GitHub
  • Gists
  • Gerrit
  • gitk
  • Git Extensions
  • GitX

Day 2

Working with commits and changes

  • Patches
  • Stashing
  • The reflog
  • Recovering from mistakes
  • Searching the commit history efficiently
  • git-bisect

Working with branches

  • Types of branches
  • Merging strategies
  • Upstream/downstream relationships
  • In-house patches of upstream code
  • Different team workflows


  • The hooks directory
  • The why and how of git hooks
  • Some useful scenarios with hooks

Good to know

  • The reset command demystified
  • Common problems and their solutions
  • Git shortcomings

Course info

Course code: T250
Duration: 2 days
Price: 21 500 SEK
Language: English

Course schedule

28 OctBook now
16 DecBook now
16 Mar 2020Book now
15 Jun 2020Book now
24 OctBook now
16 Mar 2020Book now
15 Jun 2020Book now
17 OctBook now
12 DecBook now
9 Mar 2020Book now
8 Jun 2020Book now



Related courses

  • Introduction to Git

    Category: Git
    Duration: 1 day
    Price: 12 500 SEK

Contact us for details

+46 40 61 70 720

All prices excluding VAT