Git Commands Cheat Sheet
Madhav Ganesan
Posted on June 18, 2024
Git is a distributed version control system (DVCS) that allows multiple developers to collaborate on a project, tracking changes to files and coordinating work seamlessly.
Initializing a Repository:
git init
Cloning a Repository:
git clone -b <branch-name> <url> <folder-name>
Working with Branches:
Create a new branch:
git checkout -b <new-branch>
Switch branches:
git checkout <branch-name>
Create and Switch branches:
git switch -c <new-branch>
List all branches:
git branch
Staging and Committing Changes:
Add files to staging area:
git add .
Commit changes:
git commit -m "message"
View changes before staging:
git diff
Remote Repositories:
Add a remote repository:
git remote add origin <remote-repository-URL>
List all remotes:
git remote -v
Push changes to a remote repository:
git push -u origin <branch-name>
Pull changes from a remote repository:
It fetches changes from the remote repository and immediately tries to merge them into your current branch
git pull origin <branch-name>
Fetch changes from remote repository:
It retrieves new data from a remote repository but does not integrate it into your working files.
git fetch
Stashing Changes:
Stashing in Git allows you to temporarily save changes that are not yet ready to be committed, so we can switch to another branch without losing your progress. It is used when you need to quickly switch contexts or update your working directory without committing incomplete work.
Stash changes:
git stash
Apply stashed changes:
git stash apply
Configuration:
Change user name:
git config --global user.name "name"
Change user email:
git config --global user.email "email"
Reset:
Soft reset:
git reset --soft HEAD^
Moves to the previous commit and discards all changes.
Hard reset:
git reset --hard HEAD^
Moves to the previous commit but keeps all changes.
( HEAD is a reference to the current commit &
notation HEAD^ refers to the parent commit of the current HEAD )
Clone large files
LFS
git lfs install
git clone <url>
Increase buffer size:
git config --global http.postBuffer 1048576000
Posted on June 18, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.