-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgit.config
More file actions
135 lines (119 loc) · 4.03 KB
/
git.config
File metadata and controls
135 lines (119 loc) · 4.03 KB
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
131
132
133
134
135
[diff]
renames = true
[core]
#pager = less -FRSX
#editor = code --wait
whitespace = nowarn
#excludesfile = /Users/sebastien/.gitignore_global
#attributesfile = ~/.gitattributes
autocrlf = input
[apply]
whitespace = nowarn
[user]
name = Sébastien CHEMIN
email = [email protected]
signingkey = /Users/sebastien/.ssh/id_ecdsa_sk.pub
[color]
diff = auto
status = auto
branch = auto
interactive = auto
showbranch = auto
grep = auto
ui = true
#pager = true
[alias]
st = status -uno
stu = status
ci = commit -v
showd = !git diff $1^!
br = branch
chp = cherry-pick
co = checkout
df = diff
dc = diff --cached
dn = diff --name-only
da = diffall
fa = fetch --all
std = !zenity --list --title \"Changed files\" --width=1000 --height=1000 --text \"Modified found files\" --column \"Check\" --checklist --column \"Files\" --separator=\"\n\" `git status -s | grep -v \"^??\"` | xargs git diff
lg = log --graph --pretty=tformat:'%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%an %ar)%Creset'
pom = push origin master
changes = log --reverse --pretty=format:'%Cred%h%Creset %C(bold blue)<%an>%Creset %Cgreen(%cr)%Creset -%C(yellow)%d%Creset %s%Creset' --date=relative
graph = log --graph --pretty=format:'%Cred%h%Creset %C(bold blue)<%an>%Creset %Cgreen(%cr)%Creset -%C(yellow)%d%Creset %s%Creset' --date=relative
k = !gitk --branches &
kbr = !gitk --all --simplify-by-decoration &
info = config --list
summary = log --oneline
tags = tag -n1 -l
mu = !git ls-files -v | grep ^[a-z] | awk '{print $2}'
marked-unchanged = !git ls-files -v | grep ^[a-z] | awk '{print $2}'
patch = diff --no-ext-diff --no-prefix -p
ap = apply -p0
au = update-index --assume-unchanged
nau = update-index --no-assume-unchanged
sw = update-index --skip-worktree
nsw = update-index --no-skip-worktree
msw = !git ls-files -v | grep ^S | awk '{print $2}'
nswa = !git ls-files -v | grep ^S | awk '{print $2}' | xargs git update-index --no-skip-worktree
graphviz = "!f() { echo 'digraph git {' ; git log --pretty='format: %h -> { %p }' \"$@\" | sed 's/[0-9a-f][0-9a-f]*/\"&\"/g' ; echo '}'; }; f"
diverges = !sh -c 'git rev-list --boundary $1...$2 | grep ^- | cut -c2-'
pstash = stash show -p --no-ext-diff
pnstash = stash show -p --name-only
brg = !git branch | grep -v "\\\\-[0-9]\\\\{10\\\\}$"
brclean = !git branch | grep "\\\\-[0-9]\\\\{10\\\\}$" | xargs git branch -D
mt = mergetool
lasttag = !sh -c 'git describe `git rev-list --tags --max-count=1`'
del-staged = !git commit -m "TMP" && git stash && git reset --hard HEAD^ && git stash pop
unstg = !git st -s | grep "^\\\\sM" | awk '{print $2}'
untrk = !git stu -s | grep "^??" | awk '{print $2}'
stg = !git st -s | grep "^M" | awk '{print $2}'
pushow = log @{u}.. --simplify-by-decoration --decorate --oneline
create-remote-branch = "!f() { git fetch; git push -u origin origin/master:$1}"
diff-image = "!f() { cd -- \"${GIT_PREFIX:-.}\"; GIT_DIFF_IMAGE_ENABLED=1 git diff \"$@\"; }; f"
[merge]
tool = vscode
conflictStyle = diff3
[mergetool "vscode"]
cmd = code --wait $MERGED
[diff]
tool = vscode
[difftool "vscode"]
cmd = code --wait --diff $LOCAL $REMOTE
[color "status"]
untracked = yellow
branch = magenta
[color "branch"]
upstream = bold blue
[push]
default = simple
followTags = true
[pull]
rebase = merges
[branch "master"]
mergeoptions = --no-ff
[grep]
lineNumber = true
[fetch]
prune = true
[url "[email protected]:"]
insteadOf = "https://github.com/"
[rebase]
autostash = true
[merge "npm-merge-driver"]
name = automatically merge npm lockfiles
driver = npx npm-merge-driver merge %A %O %B %P
[submodule]
recurse = true
[rerere]
enabled = true
[gpg]
format = ssh
[commit]
gpgsign = true
[filter "lfs"]
process = git-lfs filter-process
required = true
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
[gpg "ssh"]
program = /Users/sebastien/.local/bin/git-ssh-signer