Files
dotfiles/git/gitconfig.symlink
2012-05-02 17:33:14 -05:00

71 lines
1.8 KiB
Plaintext

# Nick Nisi
# gitconfig
[user]
name = Nick Nisi
email = nick@nisi.org
[alias]
ci = commit -a
co = checkout
s = status --short
ss = status
br = branch
# show a pretty log graph
lg = log --graph --pretty=oneline --abbrev-commit --decorate
# show files that have changed between two branches (git dbr master..branch)
dbr = diff --name-status
# stash shortcuts
sp = stash pop
sw = stash save
sl = stash list
sh = show --pretty="format:" --name-only
# submodule shortcuts
si = submodule init
su = submodule update
# grep commands
# 'diff grep'
dg = "!sh -c 'git ls-files -m | grep $1 | xargs git diff' -"
# 'checkout grep'
cg = "!sh -c 'git ls-files -m | grep $1 | xargs git checkout ' -"
# add grep
ag = "!sh -c 'git ls-files -m -o --exclude-standard | grep $1 | xargs git add' -"
# add all
aa = !git ls-files -d | xargs git rm && git ls-files -m -o --exclude-standard | xargs git add
# remove grep - Remove found files that are NOT under version control
rg = "!sh -c 'git ls-files --others --exclude-standard | grep $1 | xargs rm' -"
[color]
diff = auto
status = auto
branch = auto
interactive = auto
ui = auto
[color "branch"]
current = green bold
local = green
remote = red bold
[color "diff"]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
[color "status"]
added = green bold
changed = yellow bold
untracked = red
[color "sh"]
branch = yellow
[push]
# push will only do the current branch, not all branches
default = current
[branch]
# set up 'git pull' to rebase instead of merge
autosetuprebase = always
[diff]
renames = copies
mnemonicprefix = true
[core]
excludesfile = ~/.gitignore_global