diff options
Diffstat (limited to '.config/git/config')
| -rw-r--r-- | .config/git/config | 191 |
1 files changed, 191 insertions, 0 deletions
diff --git a/.config/git/config b/.config/git/config new file mode 100644 index 0000000..458280d --- /dev/null +++ b/.config/git/config @@ -0,0 +1,191 @@ +[user] + name = Robert Günzler + email = r@gnzler.io + ; signingkey = AF6AB8C8B10436B9F61293632143BD2AAB94BCC4 + signingkey = ~/.ssh/id_ed25519.pub + +[gpg] + format = ssh + +[sendemail] + sendmailCmd = ~/bin/msmtpq --set-from-header=on + envelopeSender = auto + annotate = true + multiEdit = true + confirm = always + +[credential "smtp.mailfence.com"] + username = robert@gnzler.de + helper = !sh -c 'rbw get 68b0ea26-733a-43cd-b8f8-e8ecc98de072 | xargs printf password=%s\\n' + +[credential "git.sr.ht"] + username = robertgzr + helper = !sh -c 'rbw get c7e750ea-6713-4254-90e7-6e077b552ffa | xargs printf password=%s\\n' + +[credential "github.com"] + username = robertgzr + helper = !sh -c 'rbw get f94a873d-9d72-412e-a46d-53e4cd19a291 | xargs printf password=%s\\n' + +[core] + excludesfile = $HOME/.config/git/ignore + filemode = false + pager = less -F + +[init] + defaultBranchName = master + # templateDir = ~/.dotfiles/git/templates + +[interactive] + diffFilter="diff-highlight | less -FRX --tabs=4" + +[log] + date = iso-strict-local + +[format] + signoff = true + coverLetter = false + +[column] + ui = auto + +[commit] + ; template = ~/.config/git/message + gpgSign = true + verbose = true + +[alias] + a = add --patch + amend = ci --amend --reuse-message=HEAD --edit + br = branch + ci = commit --trailer=signoff + co = checkout + cp = cherry-pick + dl = diff --stat + ds = diff --staged + fix = "!f() { local c=${1:-$(git fuzzy commits || :)}; test -n \"$c\" && git fixup $c && git ri $c^; }; f" + fixup = "!f() { local c=${1:-$(git fuzzy commits || :)}; test -n \"$c\" && git commit --fixup=$c; }; f" + grep = grep --break --heading --line-number + l = !tig + ls = log --graph --decorate --stat + mt = mergetool + pushf = push --force-with-lease + authors = shortlog -nse + reviewers = shortlog -nse --group=trailer:reviewed-by + ri = rebase --autostash --autosquash -i # -x 'git hook run pre-commit' + squash = "!f() { local c=${1:-$(git fuzzy commits || :)}; test -n \"$c\" && git commit --squash=$c; }; f" + st = status -sb + sw = switch + tig = !tig + +[apply] + # Detect whitespace errors when applying a patch + whitespace = fix + +[diff] + # Detect copies as well as renames + renames = copies + renameLimit = 3210 + tool = difftastic + +[diff "bin"] + # Use `hexdump` to diff binary files + textconv = hexdump -v -C + renames = copies + tool = vimdiff + +[difftool] + prompt = false + +[pager] + difftool = true + +[fetch] + prune = true + +[submodule] + recurse = true + +[pull] + rebase = true + autostash = true + +[grep] + lineNumber = true + +[merge] + log = true + defaultToUpstream = true + tool = nvimdiff + +[mergetool "nvimdiff"] + conflictstyle = diff3 + prompt = false + +[rerere] + enabled = false + +[push] + followTags = true + autoSetupRemote = true + +[tag] + gpgsign = true + +[safe] + directory = /var/tmp/portage/* + directory = /var/cache/distfiles/git3-src/* + +[trailer "signoff"] + key = "Signed-off-by" + cmd = ~/.config/git/signoff.sh $(git config user.email) + ifmissing = add + ifexists = replace + where = end +[trailer "changetype"] + key = "Change-type" + where = start +[trailer "connects"] + key = "Connects-to" + where = start +[trailer "depends"] + key = "Depends-on" + where = start +[trailer "changelog"] + key = "Changelog-entry" + where = start +[trailer "coauthor"] + key = "Co-authored-by" + where = start +[trailer "reviewed"] + key = "Reviewed-by" + where = start +[trailer "tested"] + key = "Tested-by" + where = start +[trailer "fixes"] + key = "Fixes" + where = start +[trailer "refs"] + key = "Refs" + where = start + + +[include] + path = tig + +[includeIf "gitdir:~/src/unikraft/**"] + path = ~/src/unikraft/.gitconfig + + +# url rewrites +; [url "git@github.com:"] +; insteadOf = "https://github.com/" +[url "git@git.sr.ht:"] + insteadOf = "https://git.sr.ht/" +; [url "git@bitbucket.org:"] +; insteadOf = "https://bitbucket.org/" +; [url "git@gitlab.com:"] +; insteadOf = "https://gitlab.com/" + + +; vim: expandtab shiftwidth=4 |