diff options
Diffstat (limited to 'git/config')
-rw-r--r-- | git/config | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/git/config b/git/config new file mode 100644 index 0000000..2c2c738 --- /dev/null +++ b/git/config @@ -0,0 +1,124 @@ +[alias] + st = status + co = checkout + fx = commit --fixup=HEAD + ci = commit -v + cm = commit -m + ri = rebase -i --autosquash + wc = whatchanged + ass = add + amend = commit --amend -v + full = show --format=fuller + noed = commit --amend --no-edit + vl = log --color --stat --pretty=fuller + tr = log --graph --date-order --date=short --pretty=format:'%C(cyan)%h%Creset -%C(auto)%d %C(yellow)%s %C(blue)(%ar) %Creset<%an>' + fz = !sha=$( git -c color.ui=auto log --oneline -n 1000 | fzf +s --no-multi --prompt 'Fixup> ' ) && git commit --fixup "${sha%% *}" + fr = !sha=$( git -c color.ui=auto log --oneline -n 1000 | fzf +s --no-multi --prompt 'Revert> ' ) && git revert "${sha%% *}" + wd = "!f() { git --paginate diff --dirstat=cumulative,files,0 ${1:-HEAD} | awk '{print $2}' | cut -d / -f1-${2:-4} | sort | uniq; }; f" + +[http] + sslVerify = true + +[core] + autocrlf = input + whitespace = warn + excludesfile = /home/ghoul/.config/git/gitignore + pager = "{ \ + COLUMNS=$(tput cols); \ + if [ $COLUMNS -ge 80 ] && [ -z $FZF_PREVIEW_COLUMNS ]; then \ + delta --side-by-side -w $COLUMNS; \ + elif [ $COLUMNS -ge 160 ] && [ ! -z $FZF_PREVIEW_COLUMNS ]; then \ + delta --side-by-side -w $FZF_PREVIEW_COLUMNS; \ + else \ + delta; \ + fi \ + }" + +[interactive] + diffFilter = delta --color-only + +[delta] + side-by-side = false + line-numbers = true + syntax-theme = gruvbox-dark + hunk-header-style = omit + file-style = blue + file-decoration-style = blue ul ol + zero-style = dim syntax + minus-non-emph-style = dim red + minus-emph-style = bold red 52 + minus-empty-line-marker-style = normal "#3f0001" + plus-non-emph-style = dim green + plus-emph-style = bold green 22 + plus-empty-line-marker-style = normal "#002800" + whitespace-error-style = reverse white + file-added-label = [+] + file-copied-label = [C] + file-modified-label = [M] + file-removed-label = [-] + file-renamed-label = [R] + line-numbers-left-format = "{nm:>1} " + line-numbers-right-format = "{np:>1} " + line-numbers-minus-style = red italic + line-numbers-plus-style = green italic + +[web] + browser = firefox + +[credential] + helper = /usr/local/libexec/git/git-credential-cache + +[merge] + log = true + tool = nvimerge + conflictstyle = diff3 + +[mergetool "nvimerge"] + cmd = nvim -d \"$LOCAL\" \"$MERGED\" \"$BASE\" \"$REMOTE\" -c \"wincmd w\" -c \"wincmd J\" + +[mergetool] + prompt = false + keepBackup = false + +[diff] + colorMoved = default + algorithm = patience + tool = nvimdiff + renames = copies + submodule = log + +[difftool "nvimdiff"] + cmd = nvim -d \"$LOCAL\" \"$REMOTE\" -c \"wincmd w\" -c \"wincmd L\" + trustexitcode = true + +[commit] + gpgsign = true + verbose = true + +[status] + branch = true + +[color] + diff = auto + status = auto + branch = auto + ui = auto + +[rerere] + enabled = true + +[grep] + lineNumber = true + extendRegexp = true + +[gpg] + program = gpg2 + +[log] + decorate = short + +[include] + path = config.local + +[help] + autocorrect = 1 |