/
.gitconfig
130 lines (89 loc) · 3.09 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
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
[alias]
# Pretty print the git log.
lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --
# Checkout a branch.
co = checkout
# Create a new branch
cob = checkout -b
# Clean up branches that have been merged.
bclean = "!/bin/bash -c 'echo $DEFAULT_GIT_BRANCH; branches=( $(git branch --merged ${1-"${DEFAULT_GIT_BRANCH}"} | grep -v " ${1-"${DEFAULT_GIT_BRANCH}"}$") ); if [ ! -z "${branches}" ]; then for branch in ${branches[@]}; do git branch -d ${branch}; done; else echo "No branches to cleanup"; fi'"
# Push origin HEAD.
poh = push origin HEAD
# Push origin HEAD no verify.
pohv = push origin HEAD --no-verify
# Pull with prune.
pp = pull --prune
# Pull with prune and clean branches that have been merged.
ppc = !git pp && git bclean
# Reset a branch that may have been force pushed to the correct remote HEAD.
fpr = !git rev-parse --abbrev-ref HEAD | xargs -I {} /bin/bash -c 'git fetch origin {} && git reset --soft origin/{}'
# Force push the current branch
fph = push origin HEAD -f
# Amend
a = commit --amend
# Amend no edit
ane = commit --amend --no-edit
# Apply a fix for GPG interactive tty's
cm-gpg = !GPG_TTY=$(tty) git commit
[apply]
# Detect whitespace errors when applying a patch
whitespace = fix
[core]
# Use custom `.gitignore` and `.gitattributes`
excludesfile = ~/.gitignore
attributesfile = ~/.gitattributes
# Treat spaces before tabs and all kinds of trailing whitespace as an error
# [default] trailing-space: looks for spaces at the end of a line
# [default] space-before-tab: looks for spaces before tabs at the beginning of a line
whitespace = space-before-tab,-indent-with-non-tab,trailing-space
# Make `git rebase` safer on OS X
# More info: <http://www.git-tower.com/blog/make-git-rebase-safe-on-osx/>
# trustctime = false
editor = vim
[color]
# Use colors in Git commands that are capable of colored output when
# outputting to the terminal. (This is the default setting in Git ≥ 1.8.4.)
ui = auto
[color "branch"]
current = yellow reverse
local = yellow
remote = green
[color "diff"]
meta = yellow bold
frag = magenta bold # line info
old = red # deletions
new = green # additions
[color "status"]
added = yellow
changed = green
untracked = cyan
[diff]
# Detect copies as well as renames
renames = copies
[help]
# Automatically correct and execute mistyped commands
autocorrect=1
[diff]
tool = meld
# Uncomment if you want fetch to also get all github pull requests, this is rather
# large on big repos.
#[remote "origin"]
#fetch = +refs/pull/*/head:refs/remotes/origin/pull/*
[github]
user = icirellik
[user]
name = Cameron Rollheiser
email = icirellik@gmail.com
signingkey = 0x1780CF254F8B82DA
[commit]
gpgsign = true
[http]
cookiefile = ~/.gitcookies
[gpg]
program = gpg2
[includeIf "gitdir:~/code/personal/"]
path = .gitconfig.personal
[includeIf "gitdir:~/code/invision/"]
path = .gitconfig.invision
[includeIf "gitdir:~/code/artsy/"]
path = .gitconfig.artsy