Git and GitHub Tutorial: Free Course from Beginner to Advanced

Free Course · Updated October 2026

Learn Git and GitHub Step by Step, from Your First Commit to CI/CD

A complete, free Git and GitHub tutorial for beginners, testers and developers. Every lesson is a focused article with commands you can run, diagrams in plain words and a practice assignment, building up to real team workflows, GitHub Actions pipelines and interview preparation.

12Modules
63Lessons
2Real projects
100%Free

How This Git and GitHub Course Works

1. Learn

Each topic is one short article that explains a single concept in plain language.

2. Try

Run every command in your own terminal and repository as you read.

3. Practise

Solve the assignment at the end of each lesson and module.

4. Build

Combine your skills in a team workflow project and a CI/CD pipeline project.

Your Learning Path

Git and GitHub Tutorial Syllabus

1

Module 1: Getting Started with Git and GitHub

Understand version control, install and configure Git, set up a GitHub account with SSH keys, and learn the terminal basics you need.

Beginner7 lessons
  1. 01What Is Git and GitHub? Version Control Explained
  2. 02Install Git on Windows and Linux
  3. 03Install Git on macOS
  4. 04Essential Terminal Commands for Git
  5. 05Configure Git: Name, Email, Editor and Defaults
  6. 06Create a GitHub Account and Set Up SSH Keys
  7. 07GitHub Fundamentals: Quick Overview
2

Module 2: Git Basics: Your First Repository

Create a repository, stage and commit changes, read history and diffs, ignore files, and safely undo mistakes.

Beginner5 lessons
  1. 08git init, add and commit: Your First Repository
  2. 09Working Directory, Staging Area and Repository
  3. 10View History and Changes: git log, show and diff
  4. 11.gitignore: Ignore Files the Right Way
  5. 12Undo Changes: restore, reset, revert and amend
3

Module 3: Working with Remote Repositories

Connect local work to GitHub: remotes, clone, push, pull, fetch, and publishing an existing project.

Beginner4 lessons
  1. 13Remote Repositories: origin, upstream and git remote
  2. 14git clone, push and pull Step by Step
  3. 15git fetch vs git pull
  4. 16Push an Existing Project to GitHub
4

Module 4: Branching and Merging

Work in parallel with branches, merge and rebase, resolve conflicts, stash work, cherry-pick fixes and tag releases.

Intermediate7 lessons
  1. 17Git Branches: Create, Switch, Rename and Delete
  2. 18git merge: Fast-Forward and Three-Way Merges
  3. 19Resolve Merge Conflicts Step by Step
  4. 20git rebase and Rebase vs Merge
  5. 21git stash: Save Work in Progress
  6. 22git cherry-pick: Copy Commits Between Branches
  7. 23Git Tags and Versioning
5

Module 5: Collaboration on GitHub

Collaborate like a professional team: pull requests, code review, forks, issues, projects and great READMEs.

Intermediate5 lessons
  1. 24Pull Requests Step by Step
  2. 25Code Review on GitHub
  3. 26Fork a Repository and Contribute to Open Source
  4. 27GitHub Issues, Labels and Projects
  5. 28Markdown and Writing a Great README
6

Module 6: Team Workflows and Best Practices

Choose a branching strategy, write meaningful commits, use Git in VS Code and follow team best practices.

Intermediate4 lessons
  1. 29Branching Strategies: Git Flow, GitHub Flow and Trunk-Based
  2. 30Commit Messages and Conventional Commits
  3. 31Git and GitHub in VS Code
  4. 32Git Workflow Best Practices for Teams
7

Module 7: Advanced Git

Rewrite and recover history, hunt bugs with bisect, automate with hooks, manage submodules and understand Git internals.

Advanced6 lessons
  1. 33Interactive Rebase: Squash, Reword and Reorder Commits
  2. 34git reflog: Recover Lost Commits and Branches
  3. 35git bisect: Find the Commit That Broke Your Code
  4. 36Git Hooks and Husky (pre-commit)
  5. 37Git Submodules
  6. 38Git Internals: Objects, Refs and HEAD
8

Module 8: Security and Repository Administration

Secure and govern repositories: tokens, branch protection, CODEOWNERS, templates, secrets, Dependabot and code scanning.

Advanced4 lessons
  1. 39Personal Access Tokens and Authentication
  2. 40Branch Protection Rules and Rulesets
  3. 41CODEOWNERS, Issue and Pull Request Templates
  4. 42Secrets, Dependabot and Code Scanning
9

Module 9: GitHub Actions: CI/CD

Automate builds, tests and deployments with GitHub Actions, from your first workflow to reusable pipelines.

Advanced10 lessons
  1. 43GitHub Actions Complete Roadmap
  2. 44GitHub Actions Fundamentals for Beginners
  3. 45Workflow Syntax: Triggers, Jobs, Steps and Runners
  4. 46GitHub Actions Example Pipelines
  5. 47Variables, Secrets and Environments
  6. 48GitHub Actions Intermediate Concepts
  7. 49Matrix Builds, Caching and Artifacts
  8. 50Reusable Workflows and Custom Actions
  9. 51Deploy with GitHub Actions
  10. 52GitHub Actions Hands-on Practice Projects
10

Module 10: GitHub Tools and Ecosystem

Work faster with the GitHub CLI, host sites on GitHub Pages, code in Codespaces and use GitHub Copilot.

Intermediate4 lessons
  1. 53GitHub CLI (gh): Work from the Terminal
  2. 54GitHub Pages: Host a Website for Free
  3. 55GitHub Codespaces: Cloud Development Environments
  4. 56GitHub Copilot for Developers and Testers
11

Module 11: Real-World Projects and Practice

Apply everything in team and CI/CD projects, module-wise assignments and a printable Git cheat sheet.

Project4 lessons
  1. 57Project 1: Team Collaboration Workflow Simulation
  2. 58Project 2: CI/CD Pipeline for a Test Automation Repo
  3. 59Module-wise Practice Assignments
  4. 60Git Commands Cheat Sheet
12

Module 12: Interview Preparation

Prepare for Git, GitHub and GitHub Actions interviews, from fresher to experienced and DevOps roles.

Career3 lessons
  1. 61GitHub Interview Questions and Answers
  2. 62Git Interview Questions for Experienced
  3. 63GitHub Actions Interview Questions

Who This Course Is For

  • Complete beginners who have never used version control: start at Lesson 1.
  • Testers and QA engineers who need Git for automation projects, such as the Playwright with TypeScript course.
  • Developers who use a few Git commands but want to understand branching, rebasing and recovery properly.
  • DevOps and SDET engineers building CI/CD with GitHub Actions: focus on Modules 6 to 9.

What You Need

  • A computer with Windows, macOS or Linux.
  • A free GitHub account (created in Lesson 6).
  • A code editor such as Visual Studio Code. No programming experience is required for Modules 1 to 6.

Git and GitHub Course FAQs

What is the difference between Git and GitHub?

Git is free version control software that runs on your computer and tracks changes to files. GitHub is an online platform that hosts Git repositories and adds collaboration features such as pull requests, issues, code review and GitHub Actions.

Is this Git and GitHub tutorial free?

Yes. Every lesson, command example, project and assignment in this course is free to read on SQA Tools.

How long does it take to learn Git and GitHub?

Most beginners are comfortable with daily Git commands in one to two weeks. Completing the whole course, including advanced Git and GitHub Actions, takes about one to two months at one hour a day.

Do I need to know programming to learn Git?

No. Git works with any files. Modules 1 to 6 need no programming knowledge; GitHub Actions examples use simple YAML and common build commands.

Should I learn Git commands or use a GUI?

Learn the commands first. They work everywhere, are used in CI/CD and interviews, and make GUIs such as VS Code easier to understand. The course also shows Git in VS Code.

Is Git important for software testers?

Yes. Automation frameworks live in Git repositories, tests run in CI on every pull request, and interviews for QA and SDET roles regularly include Git and GitHub questions.

More Free Resources