[user] email = doy@tozt.net name = Jesse Luehrs [alias] pushall = "!f() { for repo in origin github; do git push $repo \"$@\"; done; }; f" amend = !git add -p && git commit --amend record = !git add -p && git commit --verbose rebase-branch = !git rebase -i $(git merge-base master HEAD) diff-branch = "!f() { local branch=${1:-HEAD}; git diff $(git merge-base master $branch) $branch; }; f" log-branch = !git log master..HEAD review-branch = !git review master..HEAD review = "!f() { for rev in $(git rev-list --reverse \"$@\"); do git show $rev; done; }; f" info = remote show -n origin graph = log --all --graph --color=always --pretty='[%C(cyan)%h%Creset]%C(bold cyan)%d%Creset %s' prune-all = !git remote | xargs -n 1 git remote prune alias = "!f() { local name=$1; shift; git config --global alias.$name \"$*\"; }; f" aliases = !git config --get-regexp 'alias.*' | colrm 1 6 | sed 's/[ ]/ = /' lg = log --graph --pretty=format:'%Cred%h%Creset%C(yellow)%d%Creset %C(bold blue)%aN %Cgreen(%ar)%Creset%n%s%n' --abbrev-commit --date=relative --stat=72 lgs = log --graph --pretty=format:'%Cred%h%Creset%C(yellow)%d%Creset %C(bold blue)%aN %Cgreen(%ar)%Creset%n%s%n' --abbrev-commit --date=relative st = status -sb ch = "!f() { git cherry \"$@\" | grep -v '^-' | sed 's/^..//' | xargs -n1 git log --oneline -1 | cat | perl -ple 's/([^ ]+)/\\e[33m$1\\e[m/'; }; f" ff = merge --ff-only cc = cherry-pick rv = checkout -p re = rebase -i @{u} git = "!f() { git \"$@\"; }; f" vim = "!f() { vim \"$@\"; }; f" up = !git remote update && git pull && git prune-all co = checkout r = !git add -p && git commit --verbose br = for-each-ref --sort=committerdate refs/heads/ --format='%(align:30,left)%(HEAD) %(refname:short)%(end) %(color:green)(%(committerdate:relative))' ri = rebase -i fixup = "!f() { git record --fixup \"$@\"; }; f" track = "!f() { local name=$(git name-rev --name-only @); git branch --set-upstream-to=origin/$name $name; }; f" stashed = stash list --pretty=format:'%gd: %Cred%h%Creset %Cgreen[%ar]%Creset %s' refix = "!f() { env EDITOR=true git rebase -i \"$@\"; }; f" gc-aggressive = "!f() { git repack -Abd --window=250 --depth=250 --window-memory=1g && git prune --expire \"1 day ago\" && rm -f .git/gc.log && git gc; }; f" blame-stats = !~/.bin/git/git-blame-stats file-size = !~/.bin/git/git-file-size imerge = !~/.bin/git/git-imerge rebase-under = !~/.bin/git/git-rebase-under re-edit = !~/.bin/git/git-re-edit treehash = !~/.bin/git/git-treehash [github] user = doy [color] ui = auto [core] excludesfile = /home/doy/.gitignore [push] default = current [branch] autosetuprebase = always [merge] tool = vimdiff conflictstyle = diff3 [rebase] stat = true autosquash = true autostash = true [help] autocorrect = 5 [diff] renames = true mnemonicprefix = true [advice] pushUpdateRejected = false statusHints = false commitBeforeMerge = false resolveConflict = false detachedHead = false [rerere] enabled = true [pager] log = diff-highlight | less show = diff-highlight | less diff = diff-highlight | less [fetch] prune = true [include] path = .gitconfig.private ; vim:ft=gitconfig: