Advanced Git, methodologies and workflows

Objectives

  • Be able to use the advanced features of Git. Understand the various methodologies and be able to use them in the appropriate situations.

Audience

  • Developers
  • QA engineers
  • DevOps engineers
  • Automation engineers

Course Format

  • Duration of the course is typically 8 academic hours. One full day or two half-days.
  • The course includes approximately 40% hands-on lab work.

Prerequisites

  • Assuming that the audience already knows the basics of git: (commit, log, push, pull, branch, merge)
  • Bring your own computer where you already have Git-SCM installed and where you have the rights to install new software.

Syllabus

Advanced commands

  • stash, to allow for quick switching of work.
  • rebase, to make history smoother.
  • bisect, to quickly find the change that broke the code.
  • Revert changes
  • Cherry Picking
  • Interactive commit
  • Interactive rebase
  • Squashing commits
  • Advanced log history searches
  • Building custom command using aliases
  • Fix failed and abandoned merge

Introducing several methodologies, discussing the advantages and disadvantages of them.

  • Single master centralized workflow.
  • Short feature branches.
  • Long feature branches with frequent rebase.
  • GitFlow (feature branches, bug-fix branches, development branch, release branch)
  • Forking workflow with multiple remote repositories.
  • Working with Pull-requests.

Let's talk

If you would like to bring this course to your organization, let's talk about it! You can reach me via email at gabor@szabgab.com or you can go ahead and schedule a chat:

Schedule a call