Git Cheatsheet
A quick reference for common Git commands.
Branching
Command | Description |
---|---|
git branch |
Lists all local branches in the current repository. |
git branch [branch-name] |
Creates a new branch. |
git checkout [branch-name] |
Switches to the specified branch and updates the working directory. |
git merge [branch-name] |
Combines the specified branch’s history into the current branch. |
git branch -d [branch-name] |
Deletes the specified branch. |
Creating Projects
Command | Description |
---|---|
git init [project-name] |
Creates a new local repository with the specified name. |
git clone [url] |
Downloads a project and its entire version history. |
Making Changes
Command | Description |
---|---|
git status |
Lists all new or modified files to be committed. |
git add [file] |
Snapshots the file in preparation for versioning. |
git reset [file] |
Unstages the file, but preserves its contents. |
git diff |
Shows file differences not yet staged. |
git diff --staged |
Shows file differences between staging and the last file version. |
git commit -m "[descriptive message]" |
Records file snapshots permanently in version history. |
Setup
Command | Description |
---|---|
git config --global user.name "[name]" |
Sets the name you want attached to your commit transactions. |
git config --global user.email "[email address]" |
Sets the email you want attached to your commit transactions. |
git config --global color.ui auto |
Enables helpful colorization of command line output. |
Updating & Publishing
Command | Description |
---|---|
git remote add [alias] [url] |
Adds a new remote Git repository as a shortname. |
git fetch [alias] |
Downloads all history from the remote repository. |
git pull [alias] [branch] |
Fetches and merges the specified remote branch into the current branch. |
git push [alias] [branch] |
Uploads all local branch commits to the remote repository. |