blob: 9e538a68c59c5d08331def6e953257aceb5df2b4 (
plain) (
blame)
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
|
[user]
email = sommerfeld@sommerfeld.dev
name = sommerfeld
signingkey = 3298945F717C85F8
[push]
autoSetupRemote = true
followTags = true
gpgSign = if-asked
[core]
whitespace = fix,trailing-space,cr-at-eol
autocrlf = input
pager = delta
[branch]
sort=-committerdate
[diff]
tool = nvimdiff
# algorithm = histogram
colorMoved = default
mnemonicPrefix = true
relative = true
renameLimit = 10000
[difftool]
prompt = false
trustExitCode = true
[pager]
difftool = true
[difftool "nvimdiff"]
cmd = $EDITOR -d $LOCAL $REMOTE
[difftool "difftastic"]
cmd = difft "$MERGED" "$LOCAL" "abcdef1" "100644" "$REMOTE" "abcdef2" "100644"
[rebase]
autoStash = true
autoSquash = true
[fetch]
recurseSubmodules = on-demand
prune = true
[pull]
ff = only
[merge]
tool = conflictmarker
conflictstyle = zdiff3
[merge "mergiraf"]
name = mergiraf
driver = mergiraf merge --git %O %A %B -s %S -x %X -y %Y -p %P
[mergetool]
keepBackup = false
[mergetool "conflictmarker"]
cmd = $EDITOR "$MERGED"
[commit]
gpgsign = true
[tag]
gpgSign = true
[status]
short = true
branch = true
showUntrackedFiles = all
showStash = true
submoduleSummary = true
[help]
autocorrect = 1
[log]
abbrevCommit = true
date = short
[interactive]
singleKey = true
diffFilter = delta --color-only
[advice]
detachedHead = false
skippedCherryPicks = false
[format]
pretty = oneline
[delta]
navigate = true
features = gruvmax-fang zebra-dark
dark = true
side-by-side = true
line-numbers = true
relative-paths = true
hyperlinks = true
[absorb]
autoStageIfNothingStaged = true
[alias]
ghost-rebase = "!sh -c 'b=$0; u=${1:-origin/master}; wt=$(mktemp -d -t rebwt.XXXXXX); git worktree add -f "$wt" "$b"; git -C "$wt" rebase "$u" || echo "Rebase incomplete"; git worktree remove --force "$wt"'"
a = add
ab=absorb --and-rebase
b = branch -vv
bd = branch -D
c = commit
ca = commit --amend --no-edit
d = diff
dft = -c diff.external=difft diff
dl = -c diff.external=difft log -p --ext-diff
ds = -c diff.external=difft show --ext-diff
dt = difftool
f = fetch
fa = fetch --all
ff = merge --ff-only
find-merge = "!sh -c 'commit=$0 && branch=${1:-HEAD} && (git rev-list $commit..$branch --ancestry-path | cat -n; git rev-list $commit..$branch --first-parent | cat -n) | sort -k2 -s | uniq -f1 -d | sort -n | tail -1 | cut -f2'"
fp = push --force-with-lease
gone = !git for-each-ref --format '%(refname:short) %(upstream:track)' | awk '$2 == \"[gone]\" {print $1}' | xargs -r git branch -D
l = log
lm = log --pretty=medium
m = merge
mt = mergetool
p = push
r = rebase
re = remote -v
ri = rebase -i
rt = restore
s = status
st = status --no-short
stage = add
staged = diff --cached
sub = submodule
subf = submodule foreach
sw = switch
swc = switch -c
swd = switch -d
undo = reset --hard
unstage = reset HEAD --
update=!git fetch && git merge --ff-only
[includeIf "gitdir:/home/*/work/"]
path = config-work
[includeIf "gitdir:~/doxfiles/.git"]
path = config-personal
[includeIf "gitdir:~/personal/"]
path = config-personal
|