X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=gitconfig.in;h=50d88a9191c495a5cddd5f3d645e929c3983a6e9;hb=e64f5aca9dff4e4a0cd8ced5d8131a06addb85ab;hp=cb2b159b962996a4aea072db110c25af2cfabcc1;hpb=bece9f99788028738c8913b4405b2746a2d3ef72;p=config%2Fdotfiles.git diff --git a/gitconfig.in b/gitconfig.in index cb2b159..50d88a9 100644 --- a/gitconfig.in +++ b/gitconfig.in @@ -1,6 +1,6 @@ # Global Git configuration file. -# Copyright (C) 2011-2015 Simon Ruderich +# Copyright (C) 2011-2017 Simon Ruderich # # This file is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -29,7 +29,7 @@ # Hunk header. frag = magenta bold # Function in hunk header. - func = magenta bold + func = blue bold # Removed lines. old = red bold # Added lines. @@ -37,8 +37,8 @@ # Commit headers. commit = cyan -# GNU grep-like colors. [color "grep"] + # GNU grep-like colors. filename = magenta linenumber = green @@ -48,16 +48,16 @@ # (2011-11-09 13:23 CET). attributesfile = PWD/gitattributes -# Use pager for the following commands. [pager] - status = yes - tag = yes + # Use pager for the following commands. + status = true + tag = true [interactive] # Don't require in interactive commands which require only a # single key, for example `git add --patch`. Requires Perl module # Term::Readkey. - singlekey = yes + singlekey = true [alias] ## Shortcuts for often used commands. @@ -68,23 +68,39 @@ cad = commit --verbose --amend --date= d = diff dw = diff --color-words + ds = diff --stat dc = diff --cached dcw = diff --cached --color-words - ds = diff --stat + dcs = diff --cached --stat g = grep + gi = grep --ignore-case s = status l = log ls = log --stat lp = log --patch lpw = log --patch --color-words + ld = show --date=short -s --pretty='format:%h (\"%s\", %ad)' # describe a = add ap = add --patch au = add --update + rs = reset + rsh = reset --hard + rsp = reset --patch + rv = revert + cl = clean -ndx + clf = clean -fdx ## Branches. co = checkout b = branch -a -v + br = branch m = merge mo = merge origin/master + re = rebase + rei = rebase --interactive + rec = rebase --continue + cp = cherry-pick + ## Submodules. + sm = submodule ## Remote. f = fetch t = tag @@ -158,6 +174,13 @@ # Diff algorithm to use. algorithm = histogram + # Highlight moved code in a different color. + colorMoved = zebra + + # Replace "a/" and "b/" prefix in diffs with characters describing the + # context (e.g. "i/"ndex and "w/"ork tree). + mnemonicprefix = true + # Change the definition of a word as used by diff --color-words to be # shorter (not only spaces) and thus simplify the generated diffs. # Words ([a-zA-Z0-9_]+) are matched, or a single non-word character @@ -170,29 +193,36 @@ # Allow diffing of some binary files. # -# "sh -c '..' -" is used when the programs require additional arguments. The -# last "-" is argv[0] which is passed to sh, the real arguments are passed -# after "-" by git. +# "sh -c '..' ARGV0" is used when the programs require additional arguments +# which are passed after ARGV0 by git. [diff "gzip"] textconv = gzip -d -c [diff "pdf"] - textconv = sh -c 'exec pdftotext "$@" -' - + textconv = sh -c 'exec pdftotext "$@" -' ARGV0 [diff "sqlite"] - textconv = sh -c 'exec sqlite3 "$@" .dump' - + textconv = sh -c 'exec sqlite3 "$@" .dump' ARGV0 [log] # Display branches/tag names in log (same as log's --decorate option). decorate = short + # If a single file is given to `git log`, automatically use --follow. + follow = true [merge] tool = vimdiff # Merge upstream branch if `git merge` is called without arguments. - defaultToUpstream = yes + defaultToUpstream = true + +[rebase] + # Use single-letter command names in git rebase -i which are faster to + # change. + abbreviateCommands = true [push] # When running git push without a refspec push only the current - # branch, see man page git-config(1) for details. + # branch, see man page git-config(1) for details. Default since Git + # 2.0. default = simple [format] @@ -203,6 +233,17 @@ [transfer] # Automatically fsck objects when receiving them (respected by git # receive-pack and git fetch (>= 1.7.8, for fetch)). - fsckobjects = yes + fsckObjects = true + +[advice] + # Disable annoying advice messages. + waitingForEditor = false + + +# NON-GIT SETTINGS + +[annex] + # My SSH config already uses ControlMaster where appropriate. + sshcaching = false # vim: ft=gitconfig