-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitconfig
95 lines (95 loc) · 2.55 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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
[user]
name = David Gasperoni
email = [email protected]
[includeIf "hasconfig:remote.*.url:*brandnewteam*"]
email = [email protected]
[core]
excludesfile = /Users/david/.gitignore_global
autocrlf = input
pager = delta --syntax-theme='Visual Studio Dark+'
[init]
defaultBranch = main
[includeIf "gitdir:~/Developer/Projects/"]
path = ~/Developer/Projects/.gitconfig
[interactive]
diffFilter = delta --color-only
[pull]
ff = only
#rebase = true
[push]
default = current
autosetupremote = true
[diff]
compactionHeuristic = true
tool = Kaleidoscope
algorithm = histogram
[difftool]
prompt = false
[difftool "Kaleidoscope"]
cmd = ksdiff --partial-changeset --relative-path \"$MERGED\" -- \"$LOCAL\" \"$REMOTE\"
[credential "https://github.com"]
helper = !/opt/homebrew/bin/gh auth git-credential
[merge]
tool = Kaleidoscope
conflictstyle = zdiff3
[mergetool]
prompt = false
[mergetool "Kaleidoscope"]
cmd = ksdiff --merge --output \"$MERGED\" --base \"$BASE\" -- \"$LOCAL\" --snapshot \"$REMOTE\" --snapshot
trustExitCode = true
[mergetool "smerge"]
cmd = smerge mergetool \"$BASE\" \"$LOCAL\" \"$REMOTE\" -o \"$MERGED\"
trustExitCode = true
[rebase]
autostash = true
[filter "media"]
clean = git media clean %f
smudge = git media smudge %f
required = true
[filter "hawser"]
clean = git hawser clean %f
smudge = git hawser smudge %f
required = true
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true
[color]
ui = true
[alias]
st = status
ci = commit
br = branch
co = checkout
df = diff
ds = diff --staged
dt = difftool
dts = difftool --staged
cane = commit --amend --no-edit
lg = log -p
lol = log --oneline --all --decorate --full-history --color
tree = log --graph --oneline --all --decorate --full-history --color
last = log -1 HEAD
new = !sh -c 'git log $1@{1}..$1@{0} "$@"'
top-committers = shortlog -sn --all --no-merges --
who-was-here = !sh -c 'git log -i -1 --pretty=\"format:%an <%ae>\n\" --author=\"$1\"' -
case-check = !git ls-tree -r --name-only HEAD | tr A-Z a-z | sort | uniq -d
pushtoall = "!git remote | xargs -n 1 git push"
tags = tag
branches = branch -a -vv
stash-all = stash save --include-untracked
stashes = stash list
remotes = remote -v
precommit = diff --staged --diff-algorithm=minimal -w
prune-remote = fetch --prune
uncommit = reset --mixed HEAD~
discard = checkout --
untrack = rm --cache --
unstage = restore --staged
nuke = !git reset --hard HEAD && git clean -d -f
up = pull --rebase
[url "https://"]
insteadOf = git://
[submodule]
recurse = true