beginnerFreeGithub

GitHub Complete Course

A complete GitHub course covering Git basics, history navigation, branching, merging, remotes, SSH, repositories, and collaboration workflows.

Duration

19h 15m

Lessons

68 lessons

Learners

1k+ enrolled

GitHub Complete Course

Course access

Free
Completed lessons0/68
Start Course

Lessons are unlocked for your account.

Outcomes

What you will build confidence with

Follow the course in order with structured lessons and examples.

Practice the key concepts needed to move from basics to real projects.

Use the lesson reader to continue where you left off.

Track completion as you work through the full syllabus.

Syllabus

Course content

68 lessons • 19h 15m total duration
5 modules

Module 1

Version Control & Git Basics

14 lessons
1

What is Version Control? Why Tracking Changes Matters in Software Development

15m
2

Types of Version Control: Local, Centralized (SVN), and Distributed (Git)

15m
3

What is Git? History, Linus Torvalds, and Git vs Other VCS Tools

15m
4

Installing Git: Windows (Git Bash), macOS (Homebrew), and Linux (apt/yum)

15m
5

Configuring Git: git config for Username, Email, Editor, and Core Settings

15m
6

The Three States of Git: Working Directory, Staging Area, and Repository

20m
7

git init: Initializing a New Repository and the .git Folder Explained

15m
8

git status: Understanding Tracked, Untracked, Modified, and Staged Files

15m
9

git add: Staging Specific Files, Directories, and All Changes

15m
10

git commit: Writing Good Commit Messages, Atomic Commits, and Best Practices

20m
11

git log: Reading Commit History with --oneline, --graph, --decorate, --all

15m
12

git diff: Comparing Working Directory, Staged Changes, and Commits

15m
13

.gitignore: Patterns, Global Ignore, and Ignoring Already-Tracked Files

15m
14

Practical Exercise: Version-Track a Personal Project Folder From Scratch

30m

Module 2

Core Git Commands & History Navigation

13 lessons
15

git show: Inspecting a Specific Commit's Changes and Metadata

15m
16

git log Filtering: --author, --since, --until, --grep, and -S (Pickaxe)

20m
17

git blame: Finding Who Changed Which Line and When

15m
18

git shortlog: Summarized Contribution Stats Per Author

10m
19

Undoing Changes: git restore, git checkout (Old Syntax), and git clean

20m
20

Unstaging Files: git restore --staged vs git reset HEAD

15m
21

Amending Commits: git commit --amend for Local, Unpushed Commits Only

15m
22

git rm: Removing Files from Tracking and the Working Directory

15m
23

git mv: Renaming and Moving Files While Keeping History

10m
24

Tagging: git tag, Annotated vs Lightweight Tags, Listing and Pushing

20m
25

git archive: Exporting a Snapshot of a Repository Without .git History

10m
26

Working with Aliases: git config alias.st status and Creating Shortcuts

10m
27

Practical Exercise: Reconstruct a Broken Repository History Using Log and Restore

30m

Module 3

Branching, Merging & Conflict Resolution

13 lessons
28

What is a Branch? Pointer to a Commit and HEAD Explained

20m
29

git branch: Create, List, Rename, and Delete Branches

15m
30

git switch / git checkout: Switching Between Branches (Modern vs Legacy)

15m
31

git merge: Fast-Forward Merge vs Three-Way Merge

20m
32

Merge Conflicts: What Causes Them and How to Read Conflict Markers

20m
33

Resolving Conflicts: Manual Resolution and Using VS Code / IntelliJ Merge Tools

20m
34

git mergetool: Configuring External Merge Tools

15m
35

git log --merge: Viewing Commits That Caused a Conflict

15m
36

Deleting Branches: Local and Remote Branch Cleanup

15m
37

Long-Running vs Short-Lived Branches: Feature Branches and Hotfix Branches

20m
38

git stash: Temporarily Saving Work in Progress

15m
39

git stash pop / apply / list / drop: Managing the Stash Stack

15m
40

Practical Exercise: Simulate a Multi-Developer Merge Conflict and Resolve It

35m

Module 4

Introduction to GitHub & Remote Repositories

14 lessons
41

What is GitHub? Cloud Hosting for Git, GitHub vs GitLab vs Bitbucket

15m
42

Creating a GitHub Account: Profile Setup and the README Profile Repo

15m
43

Creating a Repository: Public vs Private, README, .gitignore, and License

15m
44

git remote: Adding, Viewing, Renaming, and Removing Remotes

15m
45

git clone: Cloning a Repository via HTTPS vs SSH

15m
46

SSH Key Setup: Generating Keys, Adding to GitHub, and Testing the Connection

20m
47

git push: Pushing Commits to a Remote, the -u Flag, and Tracking Branches

15m
48

git fetch vs git pull: The Difference Between Fetching and Merging Remote Changes

15m
49

git pull --rebase: Keeping a Clean, Linear History

20m
50

Upstream vs Origin: Forking Vocabulary Explained

15m
51

GitHub Repository Settings: Branch Rules, Collaborators, and Visibility

15m
52

README.md Best Practices: Badges, Screenshots, Usage Instructions, and Contributing Guides

15m
53

GitHub Profile README: Making Your Profile Stand Out With a Custom README

15m
54

Practical Exercise: Push a Local Project to GitHub and Invite a Collaborator

30m

Module 5

Collaboration: Forks, Pull Requests & Code Reviews

14 lessons
55

Forking a Repository: When and Why to Fork, Fork vs Clone

15m
56

Keeping a Fork in Sync: Adding Upstream, git fetch upstream, and Rebasing

15m
57

Pull Requests (PRs): Creating a PR, PR Anatomy, and Draft PRs

20m
58

PR Best Practices: Small Focused PRs, Linking Issues, and PR Description Templates

15m
59

Code Review on GitHub: Leaving Comments, Suggestions, and Requesting Changes

20m
60

GitHub Issues: Creating, Labeling, Assigning, Milestones, and Closing via Commit

15m
61

Issue Templates: Bug Report and Feature Request Templates

15m
62

GitHub Discussions: Community Q&A, Announcements, and Polls

10m
63

GitHub Project Boards: Kanban-Style Task Management for Repos

15m
64

Mentions & Notifications: @mentions, Team Mentions, and Notification Settings

10m
65

Squash and Merge vs Merge Commit vs Rebase and Merge: When to Use Each

20m
66

Reviewing PRs Locally: git fetch + Checkout a PR Branch

15m
67

CODEOWNERS File: Automatically Requesting Reviews From Responsible Teams

15m
68

Practical Exercise: Fork a Public Repo, Make Improvements, and Submit a Real PR

40m

Community feedback

Course reviews

Loading reviews...

Write a review

Available after you enroll in the course or purchase the product.

Log in to review