Git and Version Control
Foundational skill (2015-2025). See the master guide for context.
Beyond add/commit/push
Every QA engineer uses git add, git commit, and git push daily. That is the floor, not the ceiling. Effective QA engineers understand branching strategies, can navigate commit history to isolate regressions, write pull request descriptions that reviewers appreciate, and manage test artifacts in version control without bloating the repository. Git is not just a developer tool -- it is a QA tool.
Topics Covered
1. Branching — 01-branching/
- Branching Strategies — GitFlow, GitHub Flow, and trunk-based development from a QA perspective
- Rebase vs Merge — when to use each, conflict resolution, and keeping history clean
2. Collaboration — 02-collaboration/
- Pull Request Workflows — writing good PRs, reviewing test code, and giving constructive feedback
- Code Review for QA — what to look for when reviewing test PRs, anti-patterns, and workflow tips
3. Advanced Git — 03-advanced-git/
- Bisect and Cherry-Pick — finding regressions and applying targeted fixes
- Tagging and Releases — marking releases and associating test results
- Gitignore and Tips — managing test artifacts, practical commands, anti-patterns, and interview talking points
How to Use This Chapter
Start with branching strategies to understand how your team's workflow affects testing. Move into collaboration to improve your PR skills. Finish with advanced Git techniques that save hours of investigation when things go wrong.