forked from Integralist/dotfiles
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.gitconfig
More file actions
executable file
·137 lines (111 loc) · 3.75 KB
/
.gitconfig
File metadata and controls
executable file
·137 lines (111 loc) · 3.75 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
134
135
136
137
# https://git-scm.com/docs/git-config
# https://git-scm.com/docs/pretty-formats
#
# brew install git-delta
#
# NOTE: to apply changes to this configuration file execute:
# git init which will cause ~/.gitconfig to be reloaded
#
[alias]
branch-verbose = branch -vv
code-changes = "!git log --format=format: --name-only | egrep -v '^$' | sort | uniq -c | sort -rg | head -10"
cc = "!git code-changes"
collaborators =! bash -c 'git shortlog -s -- $0 | sort -r'
conflicts = diff --name-only --diff-filter=U
diff = diff -w ; ignore whitespace
diff-unmerged =! bash -c 'git diff --name-only --diff-filter=U | uniq | xargs "$EDITOR"'
diff-word = diff --word-diff=color
log-detailed = log --graph --pretty=format:'%Cred%h%Creset (%an) -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative
log-graph = log --graph
log-me = log --graph --author='Integralist'
log-short = log --pretty=format:'%s%n%C(green)%h %C(yellow)%D%n'
pushit = push --force-with-lease origin head
recent = branch --sort=-committerdate
search =! bash -c 'git rev-list --all | xargs git grep "$1"'
show = show -w
st = status
unstage = reset HEAD --
wip = for-each-ref --sort='authordate:iso8601' --format=' %(color:green)%(authordate:relative)%09%(color:white)%(refname:short)' refs/heads
[apply]
whitespace = nowarn
[branch "main"]
rebase = true
[branch "master"]
rebase = true
[color]
branch = always
commit = red
diff = always
interactive = always
status = always
ui = true
[color "diff"]
frag = magenta
meta = yellow
new = green
old = red
[color "diff-highlight"]
# for some reason my terminal theme needs pink to be set for the
# actual colors (red/green) to standout more clearly??
newhighlight = pink bold 22
newnormal = pink bold
oldhighlight = pink bold 52
oldnormal = pink bold
[color "status"]
added = red
changed = yellow
untracked = white
[commit]
gpgsign = false
[core]
editor = nvim
excludesfile = ~/.gitignore
ignorecase = false
pager = delta --color-only --dark --line-numbers
[delta]
keep-plus-minus-markers = true
minus-style = 'syntax darkred'
plus-style = 'syntax darkgreen'
[diff]
indentHeuristic = true
compactionHeuristic = true
[diff "exif"]
textconv = exiftool
[fetch]
recurseSubmodules = true # still requires: git clone --recursive ...
[interactive]
diffFilter = delta --color-only --dark --line-numbers
[merge]
conflictstyle = merge # previously 'diff3' (common ancestors) but wasn't that useful
tool = vimdiff # git mergetool --tool=vimdiff
[mergetool]
prompt = true
[push]
default = upstream
[user]
name = Integralist
email = mark.mcdx@gmail.com
# https://blog.github.com/changelog/2018-11-08-git-protocol-v2-support/
[protocol]
version = 2
[gpg]
program = /opt/homebrew/bin/gpg
[init]
defaultBranch = main
# force authentication to use SSH rather than HTTPS.
# be aware this affects everything that tries to use git.
# for example, vim (and other tools) will try to clone plugins using SSH.
#
# git config --global --add url."git@github.com:".insteadOf "https://github.com/"
[url "git@github.com:"]
insteadOf = https://github.com/
# avoid issues where the cargo-edit tool tries to clone from a repo you do not have WRITE access to.
# we already use SSH for every github repo, and so this puts the clone back to using HTTPS.
[url "https://github.com/rust-lang/crates.io-index"]
insteadOf = https://github.com/rust-lang/crates.io-index
# avoid issues where the `cargo audit` command tries to clone from a repo you do not have WRITE access to.
# we already use SSH for every github repo, and so this puts the clone back to using HTTPS.
[url "https://github.com/RustSec/advisory-db"]
insteadOf = https://github.com/RustSec/advisory-db
[credential]
helper = osxkeychain