-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitconfig.base
87 lines (73 loc) · 2.59 KB
/
.gitconfig.base
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
# .home/.gitconfig.base
[user]
name = Jeff Sharp
#email = (set in .gitconfig.local)
#signingkey = (set in .gitconfig.local)
[core]
# Global ignore file
excludesfile = ~/.gitignore
# Improve readability of diffs.
# https://github.com/so-fancy/diff-so-fancy
#pager = diff-so-fancy | less --tabs=4 -RFX
[fetch]
prune = true
[diff]
# Enable experimental heuristics that shift diff hunk boundaries
# to make patches easier to read.
indentHeuristic = true
[merge]
defaultToUpstream = true
log = 1000
[commit]
# Sign commits with GPG; enables [Verified] in GitHub
gpgSign = true
[tag]
# Sign commits with GPG; enables [Verified] in GitHub
gpgSign = true
[submodule]
# Specifies how many submodules are fetched/cloned at the same time.
fetchJobs = 4
[pager]
# Enable jump between files via n/N.
#diff = diff-so-fancy | less --tabs=4 -RFX --pattern '^(Date|added|deleted|modified): '
[alias]
# Convenience
a = add
ai = add --interactive
aa = add --all
aai = add --all --interactive
b = branch
bl = !git -p branch --all -vv
ci = commit
ca = commit --all
co = checkout
cob = checkout -b
com = checkout master
cow = checkout work
cp = cherry-pick -ex
d = diff
dc = diff --cached
f = fetch --all
m = merge --no-edit
po = push origin
r = rebase
ra = rebase --abort
rc = rebase --continue
ri = rebase --interactive HEAD~10
s = status
t = tag -s -m ''
tu = tag -a -m ''
sub = submodule update --init --rebase --recursive
subup = submodule update --init --rebase --recursive --remote
up = pull --all --rebase
upm = pull --all --no-edit
# Logs
lg = log --graph --pretty=format:'%Cred%h%Creset -%C(bold yellow)%d%Creset %s %Cgreen(%cr) %C(blue)<%an>%Creset' --abbrev-commit --date-order
lga = log --graph --pretty=format:'%Cred%h%Creset -%C(bold yellow)%d%Creset %s %Cgreen(%cr) %C(blue)<%an>%Creset' --abbrev-commit --date-order --all
me = log --graph --pretty=format:'%Cred%h%Creset -%C(bold yellow)%d%Creset %s %Cgreen(%cr) %C(blue)<%an>%Creset' --abbrev-commit --date-order --cherry master..HEAD
trace = log --follow -p
# Magic
loc = "!git grep -I --name-only -z '' | xargs -0 wc -l | sort"
cherry-patch = "!_() { ( cd \"$1\" && shift && git format-patch --stdout \"$@\" ) | git am --keep-cr --ignore-space-change --whitespace=nowarn; } ; _"
resign = "!GIT_EDITOR=true git rebase --exec 'git commit --amend --no-verify --no-edit --gpg-sign' -i"
# vim: filetype=gitconfig:ts=8:sts=8:sw=8:noexpandtab