Git Commands

The following is a summary of the most commonly used git commands

Create Repositories

Start a new repository or obtain one from an existing URL

Command Description
git init Creates a new local repository in the current directory
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 commit -m "[descriptive message]" Records file snapshots permanently in version history
git diff Shows file differences not yet staged
git diff --staged Shows file differences between staging and the last file version
git reset [file] Unstages the file, but preserve its contents

Working with Branches

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] Combines the specified branch’s history into the current branch
git branch -d [branch-name] Deletes the specified branch

Review History

Command Description
git log Lists version history for the current branch
git log --follow [file] Lists version history for a file, including renames
git show [commit] Outputs metadata and content changes of the specified commit
git diff [first-branch]...[second-branch] Shows content differences between two branches

Synchronize Changes

Command Description
git fetch [bookmark] Downloads all history from the repository bookmark
git merge [bookmark]/[branch] Combines bookmark’s branch into current local branch
git push [alias] [branch] Uploads all local branch commits to GitHub
git pull Downloads bookmark history and incorporates changes