Menu
Coddy logo textTech
terminal iconPart of the Terminal JourneyJourney

Learn Git & Version Control

A free, interactive course on Git and version control. You run real Git commands on every lesson - init, add, commit, branch, merge, resolve conflicts, push, pull - in a browser-based terminal, with AI hints when you get stuck and a free certificate when you finish. Part of the wider Terminal journey, so the command-line context you need is right there.

16,283+ codders enrolled

58 lessons46 challenges370 quiz questions

  • Beginner friendly
  • sparkles iconAI-assisted coding help
  • hint iconHands-on interactive lessons
  • volume On iconAudio narration on every lesson
  • quiz iconQuizzes to test your knowledge
  • certificate iconFree certificate of completion

Syllabus

1 sections2 projects58 lessons46 challenges370 quiz questions

This section is part of the Terminal Journey. The full syllabus has more sections - click any preview below to view it on the Journey page.

  1. Section 1Fundamentals82 lessons
  2. Start sectionStartExpandCollapseTrack your work with Git. Initialize repos, stage and commit changes, branch and merge, resolve conflicts, and recover from mistakes.

    Introduction

    3 lessons123

    Getting Started

    5 lessons531

    Tracking Changes

    6 lessons640

    Inspecting Changes

    4 lessons425

    Ignoring Files

    4 lessons427

    Recipe Site Project

    Project5 lessons137

    Branching

    6 lessons640

    Merging

    6 lessons640

    Undoing Changes

    6 lessons641

    Remotes

    4 lessons324

    Feature Branch Project

    Project6 lessons142

    Final Challenges

    3 lessons3
  3. Section 3Introduction to Docker40 lessons
What you get
Everything you'll use to learn to code

Learn by Doing

Write real code, query databases, build websites, and master AI prompts. Our interactive lessons cover every skill modern developers need.

playground.js
Code Editor
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
Test #1test Case Success icon
Test #2test Case Success icon
Test #3test Case Failure icon
Input
"Alex"
Output
"Hello, Coddy! Alex"

Build Your Coding Streak

Stay consistent and watch your progress grow! Track your daily coding habit, protect your streak with freeze days, and earn rewards for showing up every day.

12 days streak

Return tomorrow to keep your streak!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

Double or Nothing

Day 5 of 7

fire Freeze icon

Streak Freeze

2 left

Code Anywhere, Anytime

Take your coding journey on the go! No setup, no downloads - just open and start coding. Available on iOS, Android and Web with 4.9 star ratings.

Python
7Streak
250Score
5Energy
Variables
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Right Done icon
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Left Done icon
journey Hex Active Base iconjourney Hex Active Shadow iconjourney Hex Active Top iconjourney Lesson Theory Challenge icon
CONTINUE
journey Path Right icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson Theory Challenge icon
journey Path Left icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson All icon
Journey
Goals
Leaderboard
Profile
4.9
StarStarStarStarStar
Rating

You're Not Alone in This

Compete on global leaderboards, invite friends to earn rewards, and celebrate each other's wins. Coding is better with friends!

Challenger League
Challenger LeagueTop 7 advance
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up iconPromotion zoneleaderboard Arrow Up icon

Every way to learn

Read, listen, test yourself, ask the AI, or look up anything you've already covered. Every lesson meets you where you are.

Intro to Variables
Audio

A variable is a named container that stores a value you can reference later in your program.

In Python, you create one by writing the name, an equals sign, then the value you want to store.

The value can change over time - reassigning the name simply points it to a new value.

1xSarah

Prove Your Skills

Earn certificates for every course you complete. Add them to your LinkedIn profile and resume to showcase your coding expertise to employers.

CoddyCertificate of Completion
This certifies thatJohn Doehas successfully completed
PythonPython Fundamentals
Verified
DateJan 2026
LinkedInAdd to LinkedIn

Why learn Git with Coddy

  • Run Git in your browser. No install, no GitHub account required, no environment setup. Every command operates on a real repo so you see what git status, git log, and git diff actually print.
  • Core Git: the staging area, commits, branches, merging, rebasing, conflict resolution, remote repos, pull vs fetch, undoing mistakes. The Git skills you'll use every day on the job.
  • AI hints help you read Git's famously cryptic output - detached HEAD, fast-forward, three-way merge - without spoiling the answer, so Git stops feeling like magic.
  • Free Git certificate when you finish the section. A credible proof point for any developer role, since version control is non-negotiable on every team.

Frequently asked questions about learning Git

What is Git?

Git is the distributed version control system most software teams use to track changes to their code. Each developer has a full copy of the project history, and Git lets you commit snapshots, branch off to try ideas, merge work together, and roll back when things go wrong.

Is Git hard to learn?

The basics - init, add, commit, status, log, push, pull - are quick to pick up. The harder parts (rebasing, resolving conflicts, recovering from mistakes, understanding what HEAD is doing) take longer. The course introduces them in small steps with a real repo at every lesson so the commands stop being abstract.

Do I need to know the command line to use Git?

It helps, and the previous section of the Terminal journey covers the basics. Git has GUIs too, but every team eventually drops to the command line for the tricky operations, so it's worth being comfortable typing the commands yourself.

What's the difference between Git and GitHub?

Git is the version control tool that runs on your machine. GitHub (and GitLab, Bitbucket, etc.) is a hosting service where you push your Git repos so other people can pull them. You can use Git without ever using GitHub - they're separate things that work well together.

Can I learn Git online for free?

Yes. The interactive Git section is free - full lessons, real Git commands on every exercise, and a certificate. Everything runs in a browser-based terminal so you don't need to install Git or create accounts to start.

Do I get a certificate after the Git course?

Yes. Finishing the Git section gives you a free certificate of completion you can share on LinkedIn or include on your resume. Version control is expected on every software team, so this is a meaningful signal alongside any portfolio projects.

Git command reference

Learning the commands here? Keep this reference open - each page explains a command’s syntax, flags, and examples you can run live.

Browse all Git commands →
Coddy programming languages illustration

Learn Version Control with Coddy

GET STARTED