TestCon Europe 2022

October 24 – 27

Vilnius and Online

Milomir Dragović

Software Engineer and Founder

Taraba Tech, Serbia


Milomir is a senior software engineer, lecturer, and speaker. Generalist, interested in all aspects of product development from a business aspect all the way to hands-on development and testing. For the past 4 years, he has been teaching QA courses.


Version control with Git from zero to hero

Whether you are a manual or automation tester, junior or senior, git is a must nowadays. Even though we need 5 minutes to start using it, it’s very common that we don’t quite understand it to its core. And that’s exactly the main source of headache we get later on when doing advanced things (sometimes even with simpler things like code merge). In this workshop, we will start with the idea behind the git, its architecture, relearn how to use it, implement the skill in a real-life project, and finish big with various examples of how both manual and automation testers should use it.


Part 1: The problem, the solution(s)

  • Version control
  • History
  • Linus Torvalds

Part 2: Git setup

  • Installation
  • Configuration
  • Documentation

Part 3: Getting Started

  • Terminal
  • Repository and files
  • First commits

Part 4: Git Architecture

  • Git vs Other VCS
  • Three tree architecture
  • Transitions

Part 5: Practice with example project

  • Initializing Git
  • Adding, editing, and deleting files
  • Viewing and analyzing changes

Part 6: Dealing with mistakes

  • Undoing changes
  • Reverting
  • Resetting

Part 7: Beginner pitfalls

  • What not to version?
  • Using .gitignore
  • Stashing changes

Part 8: Branching

  • What is branching and do we really need it?
  • Viewing, creating, deleting branches
  • Navigation through branches.

Part 9: Merging Branches

  • Merging code
  • Resolving merge conflicts
  • Exploring strategies to reduce merge conflicts

Part 10: GitHub, Gitlab, GitHub

  • What are these?
  • Working with remote repositories
  • A collaboration workflow

Part 11: QA testers and engineers using Git

  • Why and when?
  • Looking through use cases
  • Guiding on how to implement new knowledge

Part 12: Practicing on a real-world project

  • Getting tasks
  • Implementing all learned
  • Analyzing workflows

Part 13: Next steps

    • Rebasing
    • Git Workflows
    • Branch management


The goal of this workshop is to (re)learn version control with Git. Participants will be able to use everything they learn on the next job day.

Target audience

[If you’re in the IT team then this is for you. Manual tester, Automation engineer, Developer, or any DevOps role, they all need to know how to use Git. The workshop will go from introductory to intermediate level and introduce some advanced hacks. Previous knowledge of Git is not mandatory, but it will ease out and speed up the workshop.

Technical requirements


  • No need to do anything upfront. You will be walked through all installations with explanations.
  • Linux and Mac users already have terminals. Windows users will be walked through the installation of Git Bash.

Technical knowledge:

  • Understanding how IT teams work (devs and QAs).
  • Basic knowledge of terminal use. You can learn this upfront, hint for googling: “basic terminal commands”.

« Back