[user] name = Egor Tensin email = Egor.Tensin@gmail.com [core] editor = vim autocrlf = false [push] default = current [mergetool] keepBackup = false [pull] ff = only [alias] clean-all = clean -fdx clean-ignored = clean -fdX clean-unknown = clean -fd l = log --oneline # This is awesome: http://stackoverflow.com/a/1838938/514684 ll = log --graph --full-history --all --pretty=format:"%h%x09%d%x20%s" lll = log --graph --full-history --all --color --pretty=tformat:"%x1b[31m%h%x09%x1b[32m%d%x1b[0m%x20%s%x20%x1b[33m(%an)%x1b[0m" # I think this is only usable on Cygwin, given all the file permission # madness there: xx = update-index --add --chmod=+x hide = update-index --skip-worktree unhide = update-index --no-skip-worktree hidden = !git ls-files -v | grep --basic-regexp \"^\\([[:lower:]]\\|S\\)\" # I heard git might use sh for aliases, so I tried to keep that in # mind. Didn't want to bother with an external script. fixup = "! \ f() { \ if ! git rev-parse --is-inside-work-tree >/dev/null ; then \ return 1 ; \ fi ; \ \ has_staged_changes=-a ; \ git diff --cached --quiet --exit-code || has_staged_changes= ; \ \ numof_parents=`git rev-list --parents -n 1 HEAD | wc --words` ; \ if [ \"$numof_parents\" -eq 1 ] ; then \ dest_ref=--root ; \ elif [ \"$numof_parents\" -eq 2 ] ; then \ dest_ref=HEAD^^ ; \ else \ echo \"Sure you want to fixup a merge commit?\" >&2 ; \ return 1 ; \ fi ; \ \ git commit $has_staged_changes --fixup=HEAD && GIT_EDITOR=true git rebase -i --autosquash \"$dest_ref\" ; \ } ; \ f ; \ " [fetch] prune = true [log] follow = true [include] path = ~/.gitconfig_work [filter "lfs"] smudge = git-lfs smudge -- %f process = git-lfs filter-process required = true clean = git-lfs clean -- %f