Its hard to memorize all the important Git commands by heart, so I thought it’s better to keep a personal Git cheat sheet for myself. So I don’t want to Google it every time whenever I need to check some syntax. So here it is.
Git Basics
Initialize an empty Git repository
git init
Create a local copy of a remote repository
git clone <repo>
Check status of the files are stages, unstaged, and untracked.
git status
Add a file to the staging area.
git add [file-name.txt]
Add all new and changed files to the staging area.
git add -a
Commit changes.
git commit -m "[commit message]"
Remove a file (or folder).
git rm -r [file-name.txt]
Undoing Changes
Create new commit that undoes all of the changes made in , then apply it to the current branch.
git revert <commit>
Remove from the staging area, but leave the working directory unchanged.
git reset <file>
Remove a file (or folder)
git rm -r [file-name.txt]
Git Config
To set your global username/email configuration:
Set your username:
git config --global user.name "FIRST_NAME LAST_NAME"
Set your email address:
git config --global user.email "MY_NAME@example.com"
To set repository-specific username/email configuration:
Set your username:
git config user.name "first_name last_name"
Set your email address:
git config user.email "my_name@example.com"
To view the repository-specific username/email configuration:
git config user.name
git config user.email
Verify your configuration by displaying your configuration file.
cat .git/config
Sharing & Updating Projects
Push a branch to your remote repository
git push origin [branch name]
Push changes to remote repository (and remember the branch)
git push -u origin [branch name]
Push changes to remote repository (remembered branch)
git push
Delete a remote branch
git push origin --delete [branch name]
Update local repository to the newest commit
git pull
Pull changes from remote repository
git pull origin [branch name]
Add a remote repository
git remote add origin ssh://git@github.com/[username]/[repository-name].git
View a remote repository
git remote get-url origin
Set a repository’s origin branch to SSH
git remote set-url origin ssh://git@github.com/[username]/[repository-name].git
Branching & Merging
List branches (the asterisk denotes the current branch)
git branch
List all branches (local and remote).
git branch -a
Create a new branch.
git branch [branch name]
Delete a branch.
git branch -d [branch name]
Delete a remote branch.
git push origin --delete [branch name]
Create a new branch and switch to it.
git checkout -b [branch name]
Clone a remote branch and switch to it.
git checkout -b [branch name] origin/[branch name]
Rename a local branch.
git branch -m [old branch name] [new branch name]
Switch to a branch.
git checkout [branch name]
Switch to the branch last checked out.
git checkout -
Discard changes to a file.
git checkout -- [file-name.txt]
Merge a branch into the active branch.
git checkout [branchYouWantToReceiveBranch]
git merge [branchYouWantToMergeIntoBranch]
Merge a branch into a target branch.
git merge [source branch] [target branch]
Stash changes in a dirty working directory.
git stash
Remove all stashed entries.
git stash clear
Inspection & Comparison
View changes.
git log
View changes (detailed).
git log --summary
View changes (briefly).
git log --oneline
Preview changes before merging.
git diff [source branch] [target branch]
References:
- How To Use Git: A Reference Guide, an article in Digital Ocean tutorials.
What are your thoughts on this post?
I’d love to hear from you! Click this link to email me—I reply to every message!
Also use the share button below if you liked this post. It makes me smile, when I see it.