forked from nhs-england-tools/dotfiles
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdot_gitconfig.tmpl
More file actions
134 lines (87 loc) · 3.07 KB
/
dot_gitconfig.tmpl
File metadata and controls
134 lines (87 loc) · 3.07 KB
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
133
[alias]
lgb = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset%n' --abbrev-commit --date=relative --branches
l = log --pretty=oneline -n 50 --graph --abbrev-commit
ll = log --pretty=format:\"%C(yellow)%h%Creset %C(cyan)%ci%Creset %C(green)%ce%Creset%x09%s%C(cyan)%C(bold)%d%Creset\" -n 50 --graph
[apply]
whitespace = fix # Fix whitespace errors when applying a patch
[branch]
autosetupmerge = false # Do not track starting branch, use `git-track` function
autosetuprebase = always # Rebase changes on pull
sort = -committerdate # List branches by most recently committed
[commit]
gpgsign = true
template = ~/.gitmessage
verbose = true # Show full diff in commit editor
[color]
branch = auto
diff = auto
grep = auto
interactive = auto
showBranch = auto
status = auto
ui = true
[color "diff"]
#commit =
#context =
#func =
#whitespace =
frag = white bold
meta = blue
new = green
old = red
[core]
attributesfile = ~/.gitattributes
autocrlf = input
excludesfile = ~/.gitignore
filemode = true
hidedotfiles = false
ignorecase = false
pager = delta # SEE: https://github.com/dandavison/delta
trustctime = false # SEE: http://www.git-tower.com/blog/make-git-rebase-safe-on-osx/
[credential]
helper = {{ if eq .chezmoi.os "darwin" }}osxkeychain{{ else }}cache{{ end }}
[diff]
algorithm = histogram # Best available hunk-splitting algorithm
colorMoved = zebra # Highlight moved blocks distinctly
renames = copies # Detect copies as well as renames
[diff "bin"]
textconv = hexdump -v -C # Use `hexdump` to generate a human-readable diff
[init]
defaultBranch = main
[help]
autocorrect = prompt # Prompt before running guessed command
[interactive]
diffFilter = delta --color-only
[delta]
navigate = true
side-by-side = true
line-numbers = true
syntax-theme = Dracula
[pull]
rebase = true # Rebase branch on top of fetched branch
[merge]
conflictstyle = diff3 # Show common ancestor in conflict markers
[push]
default = current # Push the current branch to update a branch with the same name on the receiving end
followTags = true # Push as well tags that are reachable from the commits
autoSetupRemote = true # Eliminate "fatal: no upstream branch" on first push
[rebase]
autoStash = true # Create a temporary stash entry before the operation begins, and apply it after the operation ends
updateRefs = true # Auto-update stacked branches on rebase
[rerere]
enabled = true # Remember conflict resolutions and apply them automatically
autoupdate = true # Auto-stage resolved files
[fetch]
writeCommitGraph = true # Faster git log --graph on large repos
prune = true # Auto-prune stale remote refs
[remote "origin"]
prune = true # Delete stale references associated with "origin"
[log]
date = relative # Human-readable dates in git log
[user]
email = {{ .dotfiles.email | quote }}
name = {{ .dotfiles.name | quote }}
signingkey = {{ .dotfiles.git_signingkey | quote }}
useConfigOnly = true # Refuse to guess identity; forces explicit configuration
[protocol]
version = 2 # Faster Git protocol