My Git Configs
I really hate that when I want to do branch out, I have to type git branch -n xxx
. Why do I have to type such many strokes?
This is why I have such many short alias.
[user]
email = me@seaonsroad.com
name = SeaonsRoad
[push]
default = current
[alias]
l = log --color --graph --pretty=format:'%C(auto)%h %s%d %C(green)%ad %C(blue)[%an]%C(reset)' --relative-date --decorate
ll = log --color --graph --pretty=format:'%C(auto)%h %s%d %C(green)%ad %C(blue)[%an / %cn]%C(reset)' --relative-date --decorate
l0 = log --color --graph --decorate --pretty=oneline --abbrev-commit -U0
la = log --color --graph --decorate --pretty=oneline --abbrev-commit --all
lb = log --color --graph --decorate --pretty=oneline --abbrev-commit --all --simplify-by-decoration
lg = log --color --graph --decorate
dl = log --date-order --color --graph --decorate --pretty=oneline --abbrev-commit
dla = log --date-order --color --graph --decorate --pretty=oneline --abbrev-commit --all
dlb = log --date-order --color --graph --decorate --pretty=oneline --abbrev-commit --all --simplify-by-decoration
dlg = log --date-order --color --graph --decorate
d = diff --color
dc = diff --color --cached
d0 = diff --color --unified=0
ci = commit --verbose
cin = commit --verbose --no-verify
cia = commit --amend --no-edit
cian = commit --amend --no-edit --no-verify
ciam = commit --amend
ciamn = commit --amend --no-verify
co = checkout
tr = checkout --track
s = status --short
st = status
br = branch
b = blame
mb = merge-base
cl = clean -fd
mg = merge
mgc = merge --continue
mga = merge --abort
rb = rebase
rbc = rebase --continue
rba = rebase --abort
rbs = rebase --skip
rv = revert
rvc = revert --continue
rva = revert --abort
rs = reset
rsh = reset --hard
cp = cherry-pick
cpc = cherry-pick --continue
cpa = cherry-pick --abort
sm = submodule
smi = submodule init
sms = submodule sync
smu = submodule update
p = pull
pr = pull --rebase
cloner = clone --recursive
rpo = remote prune origin
mgnff = "!mff() { git merge --ff-only \"$1\" && git reset --hard HEAD@{1} && git merge --no-ff \"$1\"; }; mff"
Now, go configure yours at ~/.gitconfig
.
Updated at 2018/11/08
Now, git l
looks like:
With the push user, git ll
looks like:
With only the branch info, git lb
looks like: