Command Line Shortcuts

Aliases

Alias

Command

g

git

ga

git add

gaa

git add --all

gapa

git add --patch

gau

git add --update

gb

git branch

gba

git branch -a

gbda

git branch --merged | command grep -vE "^(*|\smaster\s$)" | command xargs -n 1 git branch -d

gbl

git blame -b -w

gbnm

git branch --no-merged

gbr

git branch --remote

gbs

git bisect

gbsb

git bisect bad

gbsg

git bisect good

gbsr

git bisect reset

gbss

git bisect start

gc

git commit -v

gc!

git commit -v --amend

gca

git commit -v -a

gcam

git commit -a -m

gca!

git commit -v -a --amend

gcan!

git commit -v -a -s --no-edit --amend

gcb

git checkout -b

gcf

git config --list

gcl

git clone --recursive

gclean

git clean -df

gcm

git checkout master

gcd

git checkout develop

gcmsg

git commit -m

gco

git checkout

gcount

git shortlog -sn

gcp

git cherry-pick

gcpa

git cherry-pick --abort

gcpc

git cherry-pick --continue

gcs

git commit -S

gd

git diff

gdca

git diff --cached

gdt

git diff-tree --no-commit-id --name-only -r

gdw

git diff --word-diff

gf

git fetch

gfa

git fetch --all --prune

gfo

git fetch origin

gg

git gui citool

gga

git gui citool --amend

ggf

git push --force origin $(current_branch)

ghh

git help

ggpull

ggl

ggpur

ggu

ggpush

ggp

ggsup

git branch --set-upstream-to = origin/$(current_branch)

gpsup

git push --set-upstream origin $(current_branch)

gignore

git update-index --assume-unchanged

gignored

git ls-files -v | grep "^:lower:"

git-svn-dcommit-push

git svn dcommit && git push github master:svntrunk

gk

\gitk --all --branches

gke

\gitk --all $(git log -g --pretty = format:%h)

gl

git pull

glg

git log --stat --color

glgg

git log --graph --color

glgga

git log --graph --decorate --all

glgm

git log --graph --max-count = 10

glgp

git log --stat --color -p

glo

git log --oneline --decorate --color

glog

git log --oneline --decorate --color --graph

glol

git log --graph --pretty = format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit

glola

git log --graph --pretty = format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --all

glp

_git_log_prettily

gm

git merge

gmom

git merge origin/master

gmt

git mergetool --no-prompt

gmtvim

git mergetool --no-prompt --tool = vimdiff

gmum

git merge upstream/master

gp

git push

gpd

git push --dry-run

gpoat

git push origin --all && git push origin --tags

gpristine

git reset --hard && git clean -dfx

gpu

git push upstream

gpv

git push -v

gr

git remote

gra

git remote add

grb

git rebase

grba

git rebase --abort

grbc

git rebase --continue

grbi

git rebase -i

grbm

git rebase master

grbs

git rebase --skip

grh

git reset HEAD

grhh

git reset HEAD --hard

grmv

git remote rename

grrm

git remote remove

grset

git remote set-url

grt

cd $(git rev-parse --show-toplevel || echo ".")

gru

git reset --

grup

git remote update

grv

git remote -v

gsb

git status -sb

gsd

git svn dcommit

gsi

git submodule init

gsps

git show --pretty = short --show-signature

gsr

git svn rebase

gss

git status -s

gst

git status

gsta

git stash save

gstaa

git stash apply

gstd

git stash drop

gstl

git stash list

gstp

git stash pop

gstc

git stash clear

gsts

git stash show --text

gsu

git submodule update

gts

git tag -s

gunignore

git update-index --no-assume-unchanged

gunwip

git log -n 1 | grep -q -c "--wip--" && git reset HEAD~1

gup

git pull --rebase

gupv

git pull --rebase -v

gupa

git pull --rebase --autostash

gupav

git pull --rebase --autostash -v

glum

git pull upstream master

gvt

git verify-tag

gwch

git whatchanged -p --abbrev-commit --pretty = medium

gwip

git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit -m "--wip--"

Deprecated Aliases

These are aliases that have been removed, renamed, or otherwise modified in a way that may, or may not, receive further support.

Alias

Command

Modification

gap

git add --patch

new alias gapa

gcl

git config --list

new alias gcf

gdc

git diff --cached

new alias gdca

gdt

git difftool

no replacement

ggpull

git pull origin $(current_branch)

new alias ggl (ggpull still exists for now though)

ggpur

git pull --rebase origin $(current_branch)

new alias ggu (ggpur still exists for now though)

ggpush

git push origin $(current_branch)

new alias ggp (ggpush still exists for now though)

gk

gitk --all --branches

now aliased to \gitk --all --branches

glg

git log --stat --max-count = 10

now aliased to git log --stat --color

glgg

git log --graph --max-count = 10

now aliased to git log --graph --color

gwc

git whatchanged -p --abbrev-commit --pretty = medium

new alias gwch

gwip

git add -A; git ls-files --deleted -z | xargs -r0 git rm; git commit -m "--wip--"

now aliased to git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit -m "--wip--"

Functions

Current

Command

Description

current_branch

Return the name of the current branch

current_repository

Return the names of the current remotes

git_current_user_name

Returns the user.name config value

git_current_user_email

Returns the user.email config value

WiP

These features allow to pause a branch development and switch to another one ("Work in Progress", or wip). When you want to go back to work, just unwip it.

Command

Description

work_in_progress

Echoes a warning if the current branch is a wip

gwip

Commit wip branch

gunwip

Uncommit wip branch

Last updated