In this blog, I will summary the common Git Commands that I use frequently while I am working with Git.

git workflow

Getting & Creating Projects

Command Description
git init [repository name] Initialize a local Git repository
git clone ssh://git@github.com/[username]/[repository-name].git Create a local copy of a remote repository
git config –global user.name “[name]” Sets the author name
git config –global user.email “[email address]” Set email address respectively

Basic Snapshotting

Command Description
git status Check status
git add [file] Add a [file] to the staging area
git add . Add all new and changed files to the staging area
git commit -m “[commit message]” Commit changes
git rm -r [file] Remove a [file] (or folder)

Branching & Merging

Command Description
git branch List branches (the asterisk denotes the current branch)
git branch -a List all branches (local and remote)
git branch [branch name] Create a new branch
git branch -d [branch name] Delete a branch
git push origin –delete [branch name] Delete a remote branch
git checkout -b [branch name] Create a new branch and switch to it
git checkout -b [branch name] origin/[branch name] Clone a remote branch and switch to it
git branch -m [old branch name] [new branch name] Rename a local branch
git checkout [branch name] Switch to a branch
git checkout - Switch to the branch last checked out
git checkout – [file-name.txt] Discard changes to a file
git merge [branch name] Merge a branch into the active branch
git merge [source branch] [target branch] Merge a branch into a target branch
git stash Stash changes in a dirty working directory
git stash clear Remove all stashed entries

Sharing & Updating Projects

Command Description
git push origin [branch name] Push a branch to your remote repository
git push -u origin [branch name] Push changes to remote repository (and remember the branch)
git push Push changes to remote repository (remembered branch)
git push origin –delete [branch name] Delete a remote branch
git pull Update local repository to the newest commit
git pull origin [branch name] Pull changes from remote repository
git remote add origin ssh://git@github.com/[username]/[repository-name].git Add a remote repository
git remote set-url origin ssh://git@github.com/[username]/[repository-name].git Set a repository’s origin branch to SSH
git tag [commitID] give tags to the specified commit

Inspection & Comparison

Command Description
git log View changes
git log –summary View changes (detailed)
git log –oneline View changes (briefly)
git diff [source branch] [target branch] Preview changes before merging