# 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)
[core]
editor = vim
+ # Can't use ~/ because of older git versions.
excludesfile = GITIGNORE
- # Use pager for the following commands.
+# Use pager for the following commands.
[pager]
status = yes
- clean = yes
+ tag = yes
[alias]
# Shortcuts for often used commands.
- c = commit -v
- ci = commit -v
- d = diff
- di = diff
+ #
+ # 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 -av
- br = branch -av
+ b = branch --all --verbose
+ br = branch --all --verbose
m = merge
me = merge
+ # Remote.
f = fetch
fe = fetch
+ t = tag
p = push
pu = push
- # Custom commands.
+ ru = remote update
+ # Patches.
+ fp = format-patch
+ # Misc.
fs = fsck --strict --full
- glog = log --pretty=oneline --graph --all
ss = stash save
+ ssk = stash save --keep-index
sa = stash apply
sl = stash list
+ # Custom commands.
+ #
+ # tig-like log view.
+ glog = log --pretty=oneline --graph --all
+
[diff]
# Detect copies and renames.
renames = copy
+# 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)
tool = opendiff
tool = vimdiff
FI
+[format]
+ # When using git format-patch use threads and add all patches as
+ # replies to the first one.
+ thread = shallow
+
# vim: ft=gitconfig