-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.gitconfig
94 lines (92 loc) · 3.12 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
[advice]
statusHints = false # don't show how to unstage files, etc.
[user]
name = Mike Wadsten
email = [email protected]
[core]
editor = vim
excludesfile = ~/.git_excludes
autocrlf = input
[help]
autocorrect = 1
[init]
defaultBranch = main
# templatedir = ~/.git_template
[github]
user = mikewadsten
[alias] # Some stolen from Josh Davis
a = add
br = branch
ci = commit -v
ciam = commit --amend
cl = clone
co = checkout
d = diff
dc = diff --cached # Include staged files
get = fetch
# If only I could alias graph = ls --graph --decorate --all
gp = log --graph --decorate --all --oneline --format='%C(green bold)%h%Creset %C(yellow bold)[%ar]%Creset %C(red bold)%d%Creset %s %C(blue bold)<%an>%Creset'
graph = log --graph --decorate --all --oneline --format='%C(green bold)%h%Creset %C(yellow bold)[%ar]%Creset %C(red bold)%d%Creset %s %C(blue bold)<%an>%Creset'
h = help
l = log
ls = log --oneline --format='%C(green bold)%h%Creset %C(yellow bold)[%ar]%Creset %C(red bold)%d%Creset %s %C(blue bold)<%an>%Creset'
;ls = log --oneline --format='%Cred%h%Creset %Cyellow[%ar]%C(reset) %C(blue ul)%an%C(reset)%x09 - %s'
ignored = ls-files -oi --exclude-standard --directory
pu = push
pl = pull
re = reset
rs = reset
rv = revert
s = status --short -b
# Basic git daemon execution. Allows fetches, no pushes.
serve = daemon --verbose --export-all --base-path=.git --reuseaddr --strict-paths .git/
# `git serve`, but allowing pushes and giving better errors. Here be dragons.
server = !git serve --informative-errors --enable=receive-pack
sl = shortlog
snu = status --untracked-files=no
st = status
un = reset HEAD
unstage = reset HEAD
upstream = "!f() { branch=$(git rev-parse --abbrev-ref HEAD); git branch --set-upstream-to=${1:-origin}/${branch} ${branch} ;}; f"
# New commands
# As specified by Josh Davis (https://github.com/jdavis/dotfiles)
amend = commit --amend
ctags = !.git/hooks/tags_and_stuff
untrack = update-index --assume-unchanged
track = update-index --no-assume-unchanged
# Show Git repository root
root = rev-parse --show-toplevel
trymerge = "!f() { git merge --no-commit --no-ff ${1}; git merge --abort ;}; f"
sha = rev-parse HEAD
[color]
ui = always
status = always
branch = always
diff = always
interactive = always
[color "diff"]
meta = yellow bold
frag = magenta bold
old = red bold
new = green bold
whitespace = white bold
# Somehow necessary for https (or ssh?) connections
; [http]
; sslVerify = false
[commit]
verbose = true
[push]
default = upstream
[pull]
# Never start a merge when pulling
ff = only
[branch]
# `git checkout -b blah starting/point` -> DON'T assume I want to treat
# starting/point as the remote tracking branch for this new branch.
# (Otherwise, `-b blah origin/master`, then `git push origin blah` results
# in pushing to master! Yikes!)
autoSetupMerge = false
[tag]
sort = -version:refname
[include]
path = .digi.gitconfig