summaryrefslogtreecommitdiff
path: root/.config/git/config.in
blob: d2ba8db1a6a7918ba46e0f3110686614dbca625c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
# -*- mode: conf -*-

[alias]
	s = status
	co = checkout
	sco = "!f() { git stash && git checkout \"$@\"; git stash pop; }; f"
	rco = "!cd \"$(git rev-parse --show-toplevel)\" \
		&& git reset && git checkout ."
	v  = log --graph --full-history -30 --decorate --oneline --all
	ov = log --graph --full-history -30 --decorate --oneline --all \
		--simplify-by-decoration
	d = diff
	cl = clean -xdff
	rcl = "!cd \"$(git rev-parse --show-toplevel)\" \
		&& git reset && git checkout . && git clean -xdff"
	rlh = rl HEAD

[annex]
	# Manually upgrade to new repository layouts once I've confirmed that
	# doing so doesn't break any scripts.
	autoupgraderepository = false

	# Configure git-annex such that just running 'git annex init' doesn't
	# change what 'git add' does.
	gitaddtoannex = false
	skipunknown = true

[core]
	pager =
	hooksPath = ~/src/dotfiles/hooks/git/hooksPath

[dgit "default"]
	clean-mode = git-ff
	rm-old-changes = true
	distro = debian
	push-subcmd = source
	rpush-subcmd = built

[dgit-distro "debian"]
	keyid = 8DC2487E51ABDD90B5C4753F0F56D0553B6D411B
	upload-host = ssh-upload

[format]
	outputDirectory = SH_HOME/tmp

# These defaults turn off anonymous recipients to minimise key usage prompts.
[gcrypt]
	publish-participants = true
	participants = 0F56D0553B6D411B
	signingkey = 0F56D0553B6D411B

[merge]
	conflictStyle = zdiff3

[merge "dpkg-mergechangelogs"]
	   name = debian/changelog merge driver
	   driver = dpkg-mergechangelogs -m %O %A %B %A

[tar "tar.xz"]
	command = xz -c
[tar "tar.gz"]
	command = gzip -c

[transfer]
	fsckObjects = true

[pull]
	rebase = true

[push]
	default = upstream

[rebase]
	autoStash = true

[sendemail]
	annotate = true
	confirm = always
	from = Sean Whitton <spwhitton@spwhitton.name>

[user]
	name = Sean Whitton
	email = spwhitton@spwhitton.name

[url "https://git.spwhitton.name/"]
	 insteadOf = spw:
	 insteadOf = git://git.spwhitton.name/
	 insteadOf = http://git.spwhitton.name/
	 insteadOf = athena:		     # for compatibility only
	 insteadOf = demeter:		     # for compatibility only
	 insteadOf = git://spwhitton.name/   # for compatibility only
[url "git@git.spwhitton.name:"]
	 pushInsteadOf = http://git.spwhitton.name/
	 pushInsteadOf = https://git.spwhitton.name/
	 pushInsteadOf = git://git.spwhitton.name/
	 pushInsteadOf = spw:
	 pushInsteadOf = demeter:	       # for compatibility only
	 pushInsteadOf = athena:	       # for compatibility only
	 pushInsteadOf = git://spwhitton.name/ # for compatibility only

[url "https://github.com/"]
	insteadOf = github:
	insteadOf = git://github.com/
	insteadOf = http://github.com/
[url "git@github.com:"]
	pushInsteadOf = github:
	pushInsteadOf = git://github.com/
	pushInsteadOf = http://github.com/
	pushInsteadOf = https://github.com/

[url "https://salsa.debian.org/"]
	 insteadOf = salsa:
	 insteadOf = http://salsa.debian.org/
[url "git@salsa.debian.org:"]
	 pushInsteadOf = salsa:
	 pushInsteadOf = http://salsa.debian.org/
	 pushInsteadOf = https://salsa.debian.org/

[url "spwhitton@git.savannah.gnu.org:/srv/git/"]
	 pushInsteadOf = https://git.savannah.gnu.org/git/

[log]
	excludeDecoration = refs/remotes/*/HEAD
	excludeDecoration = refs/remotes/dgit/
	excludeDecoration = refs/tags/archive/debian/

[include]
	# Mostly local overrides, e.g. of user.name and user.email.
	path = ~/.config/git/local

	# Directory- and repo-specific overrides.
	path = ~/src/dotfiles/lib-src/git/includes