forked from faun/dotfiles
-
Notifications
You must be signed in to change notification settings - Fork 0
/
gitconfig
96 lines (81 loc) · 2.62 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
[alias]
co = checkout
st = status -sb
ci = commit
br = branch
lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset %Cblue[%cN]%Creset' --abbrev-commit --date=relative
ls = log --all --pretty=format:'%C(red)%ad %C(reset)[%cN]%C(magenta)%d%C(reset) %s%C(reset)' --abbrev-commit --since=2.weeks --date="local" -30
logc = log --graph --pretty=format:'%C(yellow)commit %h %Creset(%cr)%nAuthor: %C(green)%aN <%aE>%Creset%n%n %Cblue%s%Creset%n '
wdiff = diff --color-words
clone = clone --recursive
branches = branch -a -vv
current-branch = !git branch | grep '^*' | sed s/\\*\\ //
track = !git branch --set-upstream $(git current-branch) origin/$(git current-branch)
hist = log --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short
type = cat-file -t
dump = cat-file -p
unpushed = !GIT_CURRENT_BRANCH=$(git name-rev --name-only HEAD) && git log origin/$GIT_CURRENT_BRANCH..$GIT_CURRENT_BRANCH --oneline
sm = submodule foreach
modules = submodule foreach git pull origin master
count = !git shortlog -n $@ | grep \"):\" | sed \"s|:||\"
ksreview = "!f() { local SHA=${1:-HEAD}; local BRANCH=${2:-master}; if [ $SHA == $BRANCH ]; then SHA=HEAD; fi; git difftool -y -t Kaleidoscope $BRANCH...$SHA; }; f"
conflicts = !git ls-files --unmerged | cut -c51- | sort -u | xargs $EDITOR
sup = "submodule foreach 'git checkout master; git pull'"
update = !git commit --amend --date=\"$(date)\"
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "status"]
added = yellow
changed = green
untracked = cyan
[color "diff"]
whitespace = red reverse
meta = yellow bold
frag = magenta bold
old = red
new = green
[color]
diff = auto
status = auto
branch = auto
ui = auto
[merge]
tool = Kaleidoscope
stat = true
[mergetool "mvim"]
cmd=mvim -d -g $LOCAL $MERGED $REMOTE
keepbackup=false
[core]
excludesfile = ~/.gitignore
whitespace=fix,-indent-with-non-tab,trailing-space,cr-at-eol
[apply]
whitespace = fix
[help]
autocorrect = 1
[branch]
autosetuprebase = always
[push]
default = tracking
[difftool]
prompt = false
[diff]
tool = Kaleidoscope
renames = copies
mnemonicprefix = true
[difftool "Changes"]
cmd = chdiff \"$LOCAL\" \"$REMOTE\"
[difftool "Kaleidoscope"]
cmd = ksdiff --partial-changeset --relative-path \"$MERGED\" -- \"$LOCAL\" \"$REMOTE\"
[difftool "mvim"]
cmd = mvim -d \"$LOCAL\" \"$REMOTE\"
[get]
recurseSubmodules = always
[mergetool "Kaleidoscope"]
cmd = ksdiff --merge --output \"$MERGED\" --base \"$BASE\" -- \"$LOCAL\" --snapshot \"$REMOTE\" --snapshot
trustExitCode = true
[mergetool]
prompt = false
[include]
path = ~/.gitconfig.local