Branch

A branch is a separate copy of your repo from a specific commit. You can do new work in your branch without affecting work in other branches. You can later merge your branch into other branches, or, if you choose, delete that branch and the work you did on it. Branches let you try new things without risking the work you've completed so far.

Commit

A specific snapshot of your work. You manually choose when to create a commit, and you need to give it a descriptive name.

Git

One of the most popular programs for implementing version control. Typically used in the command line, but we'll use it through the GitHub Desktop app instead to keep things simple.

GitHub

A website that lets you keep a copy of your git repository online. It also allows you to collaborate with others on the same repository, keeping track of who changes what and avoiding conflicts.

Issue

A feature of GitHub that works like a to-do list for your project. Submit issues to designate problems to solve, questions to answer, features to build, etc.

Pull Request

A feature of GitHub that lets you propose merging two branches. Collaborators can discuss the quality of the merge, and commits made on the branch after making the pull request are automatically made a part of the pull request. Once consensus is reached, the branch is either merged or the pull request is rejected.

Repository

Also just "repo" for short, it's the project folder that contains all of the files you want git to track for you.

Version Control

In programming, it's a way to track changes made to code over time. This means that mistakes can be easily reverted. You also don't have to worry if you're using the most recent copy of something--the version control system makes it easy to see if something has changed.