# Global Git configuration file.
+# Copyright (C) 2011-2012 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
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This file is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this file. If not, see <http://www.gnu.org/licenses/>.
+
dnl Load m4 macros.
include(../lib.m4)
[color]
ui = auto
+[color "diff"]
+ # Meta information.
+ meta = yellow bold
+ # Hunk header.
+ frag = magenta bold
+ # Function in hunk header.
+ function = magenta bold
+ # Removed lines.
+ old = red bold
+ # Added lines.
+ new = green bold
+ # Commit headers.
+ commit = cyan
+
[core]
editor = vim
# Can't use ~/ because of older git versions.
[alias]
# Shortcuts for often used commands.
- c = commit -v
- ci = commit -v
- d = diff
- di = diff
- dc = diff --cached
- s = status
- st = status
- l = log
- ls = log --stat
- lp = log -p
+ #
+ # Local.
+ c = commit --verbose
+ ci = commit --verbose
+ d = diff --patience
+ di = diff --patience
+ dw = diff --patience --color-words
+ dc = diff --patience --cached
+ dcw = diff --patience --cached --color-words
+ s = status
+ st = status
+ l = log
+ ls = log --stat
+ lp = log --patch --patience
+ a = add
+ ap = add --patch
+ au = add --update
+ # Branches.
+ co = checkout
+ b = branch --all --verbose
+ br = branch --all --verbose
+ m = merge
+ me = merge
+ # Remote.
+ f = fetch
+ fe = fetch
+ t = tag
+ p = push
+ pu = push
+ ru = remote update
+ # Patches.
+ fp = format-patch
+ # Misc.
+ fs = fsck --strict --full
+ sl = stash list
+ ss = stash save
+ sa = stash apply
+ ssk = stash save --keep-index
+
+ # Custom commands.
+ #
+ # tig-like log view.
glog = log --pretty=oneline --graph --all
- a = add
- ap = add -p
- co = checkout
- b = branch -av
- br = branch -av
- m = merge
- me = merge
- f = fetch
- fe = fetch
- t = tag
- p = push
- pu = push
- ru = remote update
- fs = fsck --strict --full
- ss = stash save
- sa = stash apply
- sl = stash list
[diff]
# Detect copies and renames.
renames = copy
-# Allow diffing of PDF files. `pdftotext-` is a wrapper around pdftotext which
-# writes to stdout.
+# Allow diffing of some binary files.
+# `pdftotext-` is a wrapper around pdftotext which writes to stdout.
+# `sqlite3dump` is a wrapper calling `sqlite3 database-file .dump`.
+[diff "gzip"]
+ textconv = gzip -d -c
[diff "pdf"]
textconv = pdftotext-
+[diff "sqlite"]
+ textconv = sqlite3dump
[merge]
IF(OS, darwin)