-
Notifications
You must be signed in to change notification settings - Fork 2
/
gitconfig
101 lines (101 loc) · 2.44 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
96
97
98
99
100
101
[user]
name = Cam Thompson
email = cam@camthompson.com
[github]
user = camthompson
[core]
editor = vim -f
excludesfile = ~/.cvsignore
autocrlf = false
pager = less -FXRS
[color]
branch = auto
diff = auto
interactive = auto
status = auto
grep = auto
[init]
templatedir = ~/.gittemplate
defaultBranch = main
[web]
browser = open
[credential]
helper = osxkeychain
[merge]
tool = fugitive
stat = true
[mergetool "fugitive"]
cmd = vim -f -c \"Gdiff\" \"$MERGED\"
[push]
default = current
[diff]
mnemonicprefix = true
renames = copies
compactionHeuristic = true
[advice]
statusHints = false
pushNonFastForward = false
[branch]
autosetupmerge = true
autosetuprebase = always
[alias]
a = add
au = add -u
aa = add --all
ap = add -p
b = branch
c = commit --verbose
ca = commit --verbose -a
caa = commit --verbose -a --amend -C HEAD
cam = commit --verbose -am
cm = commit --verbose -m
d = diff
dc = diff --cached
dh1 = diff HEAD~1
div = divergence
ds = diff --stat
dss = diff --shortstat
f = fetch
fa = fetch --all
find-merge = "!sh -c 'commit=$0 && branch=${1:-HEAD} && (git rev-list $commit..$branch --ancestry-path | cat -n; git rev-list $commit..$branch --first-parent | cat -n) | sort -k2 -s | uniq -f1 -d | sort -n | tail -1 | cut -f2'"
g = grep
gn = goodness
gnc = goodness --cached
h = !git l -1
l = !. ~/.githelpers && pretty_git_log
la = !. ~/.githelpers && pretty_git_log --all
ls = ls-files
lol = log --graph --decorate --pretty=oneline --abbrev-commit
lola = log --graph --decorate --pretty=oneline --abbrev-commit --all
lp = log --graph --decorate --pretty=oneline --abbrev-commit --all -20
m = merge --no-ff
mff = merge --ff-only
ms = merge --squash
o = checkout
ob = checkout -b
p = push
r = !git l -30
ra = !git r --all
rb = rebase
rbi = rebase --interactive
rbc = rebase --continue
re = reset
rm = rm
rs = rebase --skip
rv = remote --verbose
sa = stash apply
sh = stash
show-merge = "!sh -c 'merge=$(git find-merge $0 $1) && [ -n \"$merge\" ] && git show $merge'"
sl = stash list
sm = submodule
u = pull
uncommit = reset HEAD^
up = !sh -c 'git pull --rebase && git log --pretty=format:\"%Cred%ae %Creset- %C(yellow)%s %Creset(%ar)\" HEAD@{1}..'
wc = whatchanged -p --abbrev-commit --pretty=medium
[pull]
rebase = merges
default = current
[grep]
extendRegexp = true
[includeIf "gitdir:~/work/"]
path = ~/.gitconfigforwork