forked from mhinz/dotfiles
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig
132 lines (111 loc) · 3.02 KB
/
config
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
; Config {{{1
[user]
name = Marco Hinz
email = [email protected]
signingKey = AC9D48E91BCF448C
[gpg]
program = gpg2
[commit]
; gpgsign = true
[core]
editor = vim
excludesfile = ~/.config/git/ignore
autocrlf = false
filemode = false
[init]
templatedir = ~/.config/git/template
[fetch]
prune = true
[push]
default = current
[rebase]
autosquash = true
autostash = true
[rerere]
enabled = true
[diff]
tool = vimdiff
algorithm = patience
mnemonicPrefix = true
compactionHeuristic = true
[difftool "accu"]
cmd = "vim -c 'call mergeutil#accurev()' \"$BASE\" \"$REMOTE\" \"$LOCAL\" \"$MERGED\""
[merge]
tool = vimdiff
conflictstyle = diff3
[mergetool "accu"]
cmd = "vim -c 'call mergeutil#accurev()' \"$BASE\" \"$REMOTE\" \"$LOCAL\" \"$MERGED\""
trustExitCode = true
[pager]
diff = diff-so-fancy | less -RFXx1,5
log = diff-so-fancy | less -RFXx1,5
show = diff-so-fancy | less -RFXx1,5
[interactive]
diffFilter = diff-so-fancy
[advice]
statusHints = no
; Alias {{{1
[alias]
a = add
b = branch
bi = bisect
bl = blame
c = commit
ca = commit --amend
cl = clone
co = checkout
cp = cherry-pick
d = diff --color --no-ext-diff
dc = !git d --cached
dcs = !git d --cached --stat
ds = !git d --stat
dw = !git d --word-diff=color
des = describe --contains
dt = difftool
f = fetch
g = grep
h = help
lfp = !git l --first-parent
ln = !git l @{1}..
lso = ls-files --others --exclude-standard
lsr = ls-remote
m = merge
ma = merge --abort
n = name-rev --name-only
p = push
pl = pull --ff-only
r = reset
ra = rebase --abort
rc = rebase --continue
re = rebase
rem = remote
ri = rebase -i
ru = remote update
rs = rebase --skip
s = status -sb -uno
sh = show
shs = show --stat
snapshot = !git stash save "snapshot: $(date)" && git stash apply "stash@{0}"
st = stash
stl = stash list
sts = stash show -p
t = tag
tr = trail
unmerged = branch --no-merged master
wt = worktree
ours = !git checkout --ours $@ && git add $@
theirs = !git checkout --theirs $@ && git add $@
rank = shortlog -sn --no-merges
authors = "!f() { git log --no-merges --pretty='format:%<(26)%an <%ae>' --author \"$*\" | sort | uniq; }; f"
by = "!f() { IFS=$'\n'; select a in `git authors \"$*\"`; do git l --no-merges --author \"${a%% *<*}\"; break; done; }; f"
upstream = !git for-each-ref --format='%(upstream:short)' $(git symbolic-ref -q HEAD)
upstream-remote = !git upstream | sed -e 's/\\/.*$//g'
; Color {{{1
[color]
branch = auto
diff = auto
interactive = auto
status = auto
ui = auto
[include]
path = config.colors