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

16 DecBook now
16 Mar 2020Book now
15 Jun 2020Book now
12 DecBook now
9 Mar 2020Book now
8 Jun 2020Book now
16 Mar 2020Book now
15 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