Git for Developers

Duration: 1 day

This course is full of energy and aimed at people with little or no understanding of git basics and want a more confidence and a deeper knowledge of this area. This course is highly recommended if you want to advance beyond the typical "edit-add-commit".

Students should be familiar with general software development principles.

Please find the course objectives below:

This course provides students with a thorough overview of working with GIT on a project. The course covers day-to-day usage as well as advanced topics.

Introduction, Principles and Fundamentals

  • GIT installation and configuration
  • Using a GIT as a "Server"
  • Git as an Directed Acyclic Graph (DAG) of commits.
  • Difference between HEAD, index and working tree

Day to Day Git

  • Developer's day-to-day GIT
  • Crafting commits
  • Understanding Branching and Merging (and how they differ from other VCs)
  • Sharing your work
  • Cloning
  • Understanding Remotes
  • Understand Fetching and Pushing

Git in a Team

  • Different GIT collaboration strategies
  • Discuss various GIT Workflows

Advanced Topics

  • reverting your work
  • Resetting: soft, mixed and hard
  • Stashing your work
  • (No-)fast-forward merge
  • Rewriting history: Why? When? DOs and DON'Ts
  • Amending commits
  • Rebasing
  • Interactive rebase
  • Force push
  • Unreachable commits and the reflog
  • Garbage collection
  • Bisecting
For an onsite course please contact us