forked from lewagon/dotfiles
-
Notifications
You must be signed in to change notification settings - Fork 0
/
gitconfig
61 lines (46 loc) · 1.54 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
[color]
branch = auto
diff = auto
interactive = auto
status = auto
ui = auto
[color "branch"]
current = green
remote = yellow
[core]
pager = less -FRSX
editor = code --wait
[alias]
co = checkout
st = status -sb
br = branch
ci = commit
fo = fetch origin
d = !git --no-pager diff
dt = difftool
stat = !git --no-pager diff --stat
# Set remotes/origin/HEAD -> defaultBranch (copied from https://stackoverflow.com/a/67672350/14870317)
remoteSetHead = remote set-head origin --auto
# Get default branch name (copied from https://stackoverflow.com/a/67672350/14870317)
defaultBranch = !git symbolic-ref refs/remotes/origin/HEAD | cut -d'/' -f4
# Clean merged branches (adapted from https://stackoverflow.com/a/6127884/14870317)
sweep = !git branch --merged $(git defaultBranch) | grep -E -v " $(git defaultBranch)$" | xargs -r git branch -d && git remote prune origin
# http://www.jukie.net/bart/blog/pimping-out-git-log
lg = log --graph --all --pretty=format:'%Cred%h%Creset - %s %Cgreen(%cr) %C(bold blue)%an%Creset %C(yellow)%d%Creset'
# Serve local repo. http://coderwall.com/p/eybtga
# Then other can access via `git clone git://#{YOUR_IP_ADDRESS}/
serve = !git daemon --reuseaddr --verbose --base-path=. --export-all ./.git
# Checkout to defaultBranch
m = !git checkout $(git defaultBranch)
# Removes a file from the index
unstage = reset HEAD --
[help]
autocorrect = 1
[push]
default = simple
[branch "master"]
mergeoptions = --no-edit
[pull]
rebase = false
[init]
defaultBranch = master