Git Tutorials
Practical, example-driven tutorials for every skill level. Real commands, real workflows — and how Gitoryx makes each task visual and instant.

Every concept in these tutorials becomes clearer when you can see it. Gitoryx visualizes your commit graph, branches, and diffs in real time.
Beginner
How to Resolve Merge Conflicts in Git
Merge conflicts are one of the most common pain points for Git users. This guide walks you through every step: detecting, understanding, and resolving conflicts — whether you prefer the CLI or a visual Git GUI like Gitoryx.
Git Stash Tutorial: Save Work Without Committing
Git stash is one of the most useful commands for switching tasks without losing your work. This tutorial explains how to stash, list, apply, and drop stashes with practical examples.
How to Undo a Commit in Git (The Right Way)
Everyone needs to undo a commit at some point. This guide covers every safe way to do it: whether the commit is local, already pushed, or deep in history.
Git Add: How to Stage Changes Before a Commit
git add is the first step in every Git commit workflow. This tutorial explains how staging works, how to add specific files or hunks, and how to avoid the common mistake of committing unwanted changes.
Git Commit: The Complete Beginner's Guide
A commit is the fundamental unit of Git history. This guide explains what happens when you commit, how to write useful messages, and how to fix mistakes — everything a beginner needs to build good habits from day one.
Git Clone: How to Copy a Repository
git clone is how you download a repository to your local machine. This tutorial explains the different cloning methods, options like depth and branch selection, and how to handle common issues.
Git Config: How to Configure Git for Your Workflow
Before writing your first commit, Git needs to know who you are. git config controls everything from your identity to your preferred editor, merge strategy, and custom aliases. This guide covers local, global, and system-level configuration.
Git Reset: Undo Changes at Any Stage
git reset is one of Git's most powerful — and most misunderstood — commands. This guide explains the three modes (--soft, --mixed, --hard), when each is safe to use, and how to recover if you go too far.
Git Remote: Connect Your Repo to a Remote Server
A Git remote is a reference to a copy of your repository hosted elsewhere — GitHub, GitLab, Bitbucket, or your own server. This guide explains how to add, inspect, rename, and remove remotes, and how remote tracking branches work.
Git Branch: Create, Switch, and Manage Branches
Branches are the foundation of every Git workflow. This tutorial covers creating and switching branches, understanding HEAD, deleting stale branches, and working with remote branches — all with practical examples.
Git Checkout: Switch Branches, Files, and Commits
git checkout is one of Git's most versatile commands. This guide covers switching branches, checking out specific commits (detached HEAD), restoring individual files, and how the newer git switch and git restore commands relate to it.
Git Diff: See What Changed Before You Commit
git diff is your window into what has changed in your repository. This tutorial explains how to compare staged vs unstaged changes, diff between branches and commits, and how to read the unified diff format.
Git Pull: Sync Your Branch with the Remote
git pull keeps your local branch in sync with the remote. This tutorial explains what pull actually does (fetch + merge or rebase), when to prefer git fetch, and how to handle conflicts that arise during a pull.
Git Push: Upload Your Commits to a Remote Repository
git push sends your local commits to a remote repository, making them available to your teammates. This guide covers standard pushes, setting upstream branches, force pushing safely, and what to do when a push is rejected.
Intermediate
Git Branching Strategy: A Complete Guide
A solid Git branching strategy is the backbone of any professional development workflow. This guide covers everything from basic branch creation to team-wide strategies like GitFlow and trunk-based development.
Git Rebase vs Merge: What's the Difference?
Choosing between rebase and merge is one of the most debated topics in Git. This guide explains the difference, shows real examples, and helps you decide which approach fits your workflow.
Git Cherry Pick Tutorial: Apply Specific Commits
Cherry-picking lets you apply any commit from any branch to your current branch — without merging everything. This tutorial shows you exactly how to use it, and when not to.
GitFlow Explained: The Classic Branching Model
GitFlow is a structured Git workflow built around feature, develop, release, and hotfix branches. This guide explains every component and helps you decide if GitFlow is right for your team.
Git Bisect: Find the Commit That Broke Your Code
git bisect uses binary search to pinpoint the exact commit that introduced a regression. Instead of checking hundreds of commits manually, it narrows the culprit down in logarithmic time. This guide shows you how — from the basics to full automation.
Git Hooks: Automate Actions at Key Points in Your Workflow
Git hooks are scripts that run automatically at specific points in the Git workflow — before or after commits, pushes, and merges. This tutorial shows you how to create and use hooks to enforce code quality, lint code, run tests, and automate repetitive tasks.
Git Commit Conventions: Conventional Commits & Gitmoji
A consistent commit message format makes your Git history readable, enables automatic changelogs, and improves collaboration. This guide covers the Conventional Commits specification (feat, fix, chore, docs, refactor…), Gitmoji, and how to enforce standards in your team with hooks and tooling.
Git Changelog & Sprint Visualization: Track What Ships
A good changelog tells the story of your software. A sprint visualization shows what actually shipped. This guide covers generating changelogs from Git history, using tags for releases, and visualizing commit activity across a sprint — all without leaving your Git workflow.
Advanced
Learn Git faster with a visual client
Gitoryx visualizes your commit graph, branches, and diffs in real time — available natively on macOS, Windows, and Linux. Free to download.