dot/gitconfig.in: Add rune to run a command in all modules.
[profile] / dot / gitconfig.in
1 ### -*-conf-*-
2 ### Git configuration
3
4 [core]
5 filemode = true
6 excludesfile = @profile@/git/gitignore
7 attributesfile = @profile@/git/attributes
8 whitespace = trailing-space,space-before-tab,indent-with-non-tab
9
10 [user]
11 name = Mark Wooding
12 email = mdw@distorted.org.uk
13 signingkey = @releasekey@
14
15 [annex]
16 sshcaching = false
17
18 [merge]
19 summary = true
20 tool = emerge
21 conflictStyle = diff3
22
23 [mergetool "emerge"]
24 path = emerge-hack
25
26 [diff]
27 renames = copies
28 renameLimit = 1024
29 wordRegex = [[:alnum:]]+|[^[:space:][:alnum:]]
30
31 [diff "lisp"]
32 xfuncname = "^((\\(|\\s*\\(def).*$)"
33
34 [log]
35 date = rfc
36 decorate = true
37 follow = true
38 mailmap = true
39
40 [rebase]
41 autosquash = true
42
43 [push]
44 default = matching
45 followTags = true
46
47 [format]
48 headers = "Organization: Straylight/Edgeware\n"
49 from = Mark Wooding <@email@>
50 coverletter = auto
51 thread = shallow
52 signature = "[mdw]"
53 outputdirectory = p/
54
55 [color]
56 ui = auto
57
58 [color "diff"]
59 plain = normal
60 meta = bold
61 new = green
62 old = red
63 commit = bold yellow
64 whitespace = reverse red
65
66 [color "interactive"]
67 prompt = bold yellow
68 header = bold
69 help = green
70 error = bold red
71
72 [color "status"]
73 header = bold
74 added = bold green
75 changed = bold blue
76 untracked = bold red
77
78 [color "branch"]
79 current = bold
80 local = normal
81 remote = cyan
82
83 [color "grep"]
84 external = --color=always
85
86 [column]
87 ui = auto column dense
88
89 [pager]
90 log = perl /usr/share/doc/git/contrib/diff-highlight/diff-highlight | mdw-pager
91 show = perl /usr/share/doc/git/contrib/diff-highlight/diff-highlight | mdw-pager
92 diff = perl /usr/share/doc/git/contrib/diff-highlight/diff-highlight | mdw-pager
93
94 [alias]
95 do = "!sh -e -c ' \
96 quiet=; \
97 case $#,$1 in 0, | *,*,*) ;; *,-q) quiet=--quiet; shift ;; esac; \
98 case $quiet in ?*) ;; *) echo \"Entering toplevel\" ;; esac; \
99 (name=\"<toplevel>\"; path=.; toplevel=$(pwd); \
100 sha1=$(git rev-parse HEAD); \
101 set +e; case $# in 1) eval \"$1\" ;; *) \"$@\" ;; esac); \
102 exec git submodule $quiet foreach --recursive \"$@\"' do"
103 egrep = "grep -E"
104 graph = "log --pretty=oneline --abbrev-commit --graph"
105 release = !"sh -e -c ' \
106 [ $# -gt 0 ] || { \
107 echo >&2 \"usage: git release TAG [OPTS]\"; \
108 exit 1; \
109 }; \
110 git tag -as -m \"Release $1.\" \"$@\"' release"
111 amend = !"env EDITOR=true VISUAL=true git commit --amend -a"
112 spaces = !"sh -e -c 'git ls-files -z \"$@\"| \
113 xargs -0r space -cv' spaces"
114 files = "ls-files --exclude-standard"
115 unstg = !"sh -e -c ' \
116 : ${GIT_DIR=$(git rev-parse --git-dir)}; \
117 if [ $# -eq 0 ]; then set -- \"$(stg branch)\"; fi; \
118 for branch; do \
119 rmdir \"$GIT_DIR/patches/$branch/patches\"; \
120 rm -rf \"$GIT_DIR/patches/$branch\"; \
121 git for-each-ref -s \
122 --format \"git update-ref -d %(refname) %(objectname)\" \
123 \"refs/patches/$branch\" \"refs/bases/$branch\" | \
124 sh -e; \
125 done' unstg"
126
127 [rerere]
128 enabled = yes
129 autoupdate = yes
130
131 [stgit]
132 autoresolved = yes
133 smtpdelay = 0
134
135 [mail "alias"]
136 git = git@vger.kernel.org
137 mdw = mdw@distorted.org.uk
138
139 [sendemail]
140 from = Mark Wooding <mdw@distorted.org.uk>
141 aliasesfile = @profile@/dot/mailrc
142 aliasfiletype = mailrc
143 chainreplyto = no
144 thread = no
145 signedoffbycc = yes
146 suppresscc = self
147
148 [mailinfo]
149 scissors = true
150
151 [gui]
152 fontui = -family Sans -size 10
153 fontdiff = -family Fixed -size 13
154
155 [http]
156 cookiefile = @home@/.gitcookies