Learn Git through practice

GitByBit is a unique course that teaches you Git through practice right in your code editor. You follow on-screen instructions and perform Git commands in your code editor exactly as you would in your daily work. Start from the very basics and bit-by-bit learn everything there is to know about Git.

Let me share some facts about the course. After finishing the course, you will have the experience of executing various Git commands (18 in total) at least 95 times. This practice will help you feel confident in your work from day one.

Visual Studio Code

1. Install the VS Code editor
2. Download our plugin:
Download plugin

JetBrains IDEs Coming soon

In development...

IntelliJ IDEA, WebStorm, PHPStorm, PyCharm, etc.

Course content

Each lesson in the course takes about 5-10 minutes to complete and requires you to perform a series of Git commands in your code editor. This course is tightly integrated with your code editor, so if you make a mistake, the course can detect it and suggest a solution. This way, you learn by doing and get immediate feedback.

Part I: Working Solo FREE

Introduction to version control

  • What is version control
  • Why use version control
  • Introduction to Git
  • How Git works

Setting up Git

  • Installing Git
  • Command line and terminal
  • The `git` command
  • Configuring Git credentials
  • Configuring line endings treatment
  • Configuring default branch name

Getting files into the repository

  • Initializing repository
  • Adding files to the repository
  • Adding and committing changes
  • Checking the status of the repository

Resetting unwanted changes

  • Comparing the working tree with the repository
  • Discarding local changes
  • Discarding staged changes
  • Amending the last commit

Tagging and branching

  • Referencing commits
  • Tags
  • Branches and branching strategies
  • Creating and switching branches
  • Merging branches


  • Browsing history
  • Checking the difference between commits
  • Reverting changes made by older commits
  • Resetting branches

Remotes and GitHub

  • What is a remote repository
  • Creating a GitHub repository
  • Adding GitHub repository as a remote
  • Setting up GitHub credentials
  • Pushing and pulling changes from a remote repository
  • Danger of rewriting history on a public repository

Part II: Working in a Team PRO

  • Introduction to team work with Git.
  • Setting up a team repository.
  • Cloning a team repository.
  • Best practices for composing commits and writing commit messages.
  • Checking the diff of changes.
  • Ignoring specific files and directories with .gitignore.
  • Stashing unwanted changes for later.
  • Advanced browsing history, branch trees, etc.
  • Checking who was the author of particular change.
  • Branching strategies when working in a team.
  • Merging branches.
  • Solving conflicts.
  • Rewriting history.
  • Recovering lost commits and branches.
  • GitHub: Forking repositories.
  • GitHub: Pull requests.
  • Github: Updating forks.

Any questions or feedback?

If you have any questions or feedback about the course, feel free to contact me via email support@gitbybit.com. I am always happy to help you with any issues you might have. I am also open to any suggestions on how to improve the course.

Become GitByBit PRO

Enhance your learning experience with PRO features:

  • Access to Part II: Team work

    A whole new section of over 30 chapters that cover Git features and workflows required for effective team work.

  • Focused practice

    Build muscle memory of the most common Git commands by practicing them repeatedly in a series of exercises that resemble real project work.

  • Expert tips

    Unlock productivity tips, best practices and bonus topics about Git, working in terminal, and overall software development from a veteran software developer.

Buy PRO access