-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgitconfig
75 lines (75 loc) · 2.58 KB
/
gitconfig
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
# vim: filetype=gitconfig:
[user]
name = Immanuel Haffner
email = haffner.immanuel@gmail.com
[core]
excludesfile = /home/immanuel/.gitignore
autocrlf = input
pager = delta
[interactive]
diffFilter = delta --color-only
[delta]
line-numbers = true
navigate = true
[diff]
mnemonicPrefix = true # use descriptive initials (c/i/w)
renames = true # show renames
tool = nvimdiff
colorMoved = dimmed-zebra
colorMovedWS = ignore-space-at-eol,ignore-space-change
[difftool]
prompt = true
[difftool "nvimdiff"]
cmd = nvim -d $LOCAL $REMOTE
[merge]
tool = nvimdiff
defaultToUpstream = true
conflictstyle = zdiff3
[mergetool]
prompt = true
[mergetool "nvimdiff"]
cmd = nvim -d $BASE $LOCAL $MERGED $REMOTE -c '$wincmd w' -c 'wincmd J' -c 'wincmd w' -c 'wincmd k' -c 'wincmd w' -c 'wincmd l'
[push]
default = tracking
[color]
status = auto
branch = auto
ui = auto
[alias]
bvv = branch -vv
ca = commit -a -v
cat = cat-file -p
ci = commit -v
co = checkout
conflict = !nvim -c '/^[<=|>]\\{7\\}' -p $(git ls-files --unmerged | cut -c 51- | uniq)
d = diff
dc = diff --cached
dh = diff HEAD
dt = difftool
get = pull --recurse-submodules --tags --prune
lg = log --graph --format=format:'%C(bold yellow reverse)%h%C(reset) %C(bold white)— %C(bold red)%an%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(auto)%d%C(reset)%n'' %C(reset)%w(120,0,10)%s' --abbrev-commit
lga = log --all --graph --format=format:'%C(bold yellow reverse)%h%C(reset) %C(bold white)— %C(bold red)%an%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold green)(%ar)%C(reset)%C(auto)%d%C(reset)%n'' %C(reset)%w(120,0,10)%s' --abbrev-commit
long = log --stat --decorate --graph --show-signature
mr = push -o merge_request.create -o merge_request.target=main -o merge_request.draft
mwps = push -o merge_request.create -o merge_request.target=main -o merge_request.merge_when_pipeline_succeeds
reword = commit --amend
st = status
stat = diff --stat
uncommit = reset --soft HEAD~1
untrack = rm --cache --
upbase = rebase @{u}
linestat = ! "f() { git ls-files | while read f; do git blame -w -M -C -C --line-porcelain \"$f\" | grep -I '^author '; done | sort -f | uniq -ic | sort -n --reverse; }; f"
[commit]
gpgsign = true
[rerere]
enabled = true
autoupdate = true
[init]
defaultBranch = main
[pull]
rebase = true
[fetch]
prune = true
pruneTags = true
[tag]
sort = version:refname # sort tags as version numbers, i.e. 1.2.0 before 1.10.2