summary refs log tree commit diff
path: root/.config/git
diff options
context:
space:
mode:
Diffstat (limited to '.config/git')
-rw-r--r--.config/git/config336
-rw-r--r--.config/git/ignore60
2 files changed, 0 insertions, 396 deletions
diff --git a/.config/git/config b/.config/git/config
deleted file mode 100644
index 141d409..0000000
--- a/.config/git/config
+++ /dev/null
@@ -1,336 +0,0 @@
-[user]
-    name = Robert Günzler
-    email = r@gnzler.io
-    ; signingkey = AF6AB8C8B10436B9F61293632143BD2AAB94BCC4
-    signingkey = ~/.ssh/id_ed25519.pub
-
-[gpg]
-    format = ssh
-
-[sendemail]
-    from = Robert Günzler <r@gnzler.io>
-    smtpServer = smtp.mailfence.com
-    smtpEncryptionn = ssl
-    smtpUser = robert@gnzler.de
-    annotate = true
-    multiEdit = true
-    confirm = always
-
-[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'
-
-[credential "smtp.mailfence.com"]
-    username = robert@gnzler.de
-    helper = !sh -c 'rbw get 68b0ea26-733a-43cd-b8f8-e8ecc98de072 | xargs printf password=%s\\n'
-
-[core]
-    excludesfile = $HOME/.config/git/ignore
-
-    # 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
-
-    # Prevent showing files whose names contain non-ASCII symbols as unversioned.
-    # http://michael-kuehnel.de/git/2014/11/21/git-mac-osx-and-german-umlaute.html
-    precomposeunicode = false
-	filemode = false
-
-    # enable coditional paging based on the amount of content
-    ; pager = "less -F -X"
-    pager = "diff-highlight | less -FRX --tabs=4"
-	autocrlf = false
-	longpaths = true
-
-    askPass = "~/bin/askpass"
-
-[init]
-    defaultBranchName = master
-    # templateDir = ~/.dotfiles/git/templates
-
-[interactive]
-    diffFilter="diff-highlight | less -FRX --tabs=4"
-
-[log]
-    date = iso-strict-local
-    ; date = relative
-
-[format]
-    signoff = true
-    coverLetter = false
-
-[column]
-    ui = auto
-
-[commit]
-    template = ~/.config/git/message
-    gpgSign = true
-    verbose = true
-
-[alias]
-    stp = status --porcelain --branch
-    sti = status --porcelain --branch --ignored
-    st = status -sb
-    stl = ls-files -m -o --exclude-standard
-    a = add --patch
-    ci = commit
-    br = branch
-    co = checkout
-    sw = switch
-    cp = cherry-pick
-    d = diff
-    df = diff --word-diff
-    ds = diff --staged
-    dl = diff --stat
-    diffthis = "!f(){ rev=${1:-HEAD}; git log --color=always -1 ${rev}; echo; git --no-pager diff --color=always -p --patch-with-stat ${rev}^..${rev}; }; f"
-    dt = diffthis
-    ; diffsummary = "!f() { local a=${1:-HEAD}; local b=${2:-master}; if [[ $a == '-' ]]; then a=HEAD; fi; printf  ' %s is %s commits ahead and %s commits behind %s\n' `git rev-parse --short=7 $a` `git rev-list --count $b..$a` `git rev-list --count $a..$b` $b; printf ' last common commit (merge-base): %s\n' `git merge-base $a $b`; git diff --shortstat $a..$b; }; f"
-    dft = difftool
-    unstage = reset --hard HEAD
-    lp = log --graph --pretty=format:'%Cred%h%Creset%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
-    ll = log --pretty=oneline --graph --decorate --abbrev-commit
-    lol = ll
-    lla = ll --all
-    lola = lla
-    g = grep --break --heading --line-number
-    amend = ci --amend --reuse-message=HEAD --edit
-    show-ignored = "! git clean -ndX | perl -pe 's/Would remove/Ignored:/'"
-    # usage: change-date [rev] [date] [...additional filter-branch flags]
-    # rewrites the commit/author date of <rev> to be <date>
-    # if <rev> is empty HEAD is used
-    # if <date> is empty the current time is used
-    change-date = "!f() { now=\"$(date +'%a %b %d %H:%M:%S %Y %z')\"; head=\"$(git rev-parse HEAD)\"; git filter-branch $3 --env-filter 'if [[ $GIT_COMMIT = ${1-$head} ]]; then export GIT_AUTHOR_DATE=${2:-$now}; export GIT_COMMITTER_DATE=${2:-$now}; fi'; }; f"
-    # usage: ld <n>
-    # prints out the `git log` for the n last days
-    log-since = "!sh -c \"git log --since '${1:-1} days ago' --oneline --author $(git config user.email)\" -"
-    # usage: pr <num> [<remote>]
-    # creates local branch pr/<num> from origin or <remote> and checks it out
-    ; pr = "!f() { git fetch -fu ${2:-origin} refs/pull/${1:?missing pr num}/head:pr/$1 && git checkout pr/$1; }; f"
-    total-lines = "! git ls-tree -r master --name-only | xargs -I {} git blame --line-porcelain {} | sed -n 's/^author //p' | sort | uniq -c | sort -rn"
-    fixup = "!f() { git commit --fixup=${1}; }; f"
-    fix = "!f() { git fixup ${1} && git ri ${1}^; }; f"
-    squash = "!f() { git commit --squash=${1}; }; f"
-    ri = rebase --autostash --autosquash -i # -x 'git hook run pre-commit'
-    ri-pr = !bash -c 'git ri `git merge-base HEAD ${1:-origin/master}`'
-    mt = mergetool
-    pushf = push --force-with-lease
-    root = "rev-parse --show-toplevel"
-    trailer = "!f() { trailer=${1:?TRAILER}; ref=${2:-HEAD}; mode='--amend'; [ $ref != 'HEAD' ] && mode='--fixup=$ref'; msg=$(git rev-parse --show-toplevel)/LAST_COMMIT_MSG; git log -1 --format=%B $ref > $msg; git interpret-trailers --in-place --trailer $trailer $msg; git commit --allow-empty --no-verify --only --edit --file $msg $mode; rm $msg; }; f"
-    ; oldest-ancestor = !bash -c 'diff -u <(git rev-list --first-parent ${1:-master}) <(git rev-list --first-parent ${2:-HEAD}) | sed -ne \"s/^ //p\" | head -1'
-    ; oldest-ancestor = !bash -c 'git merge-base ${1:-master} ${2:-HEAD}'
-    rebaseonto = "!f() { git ri --onto=${1:-origin/master} $(git merge-base ${1:-origin/master} ${2:-HEAD}); }; f"
-    ro = rebaseonto
-    find-by-subject = "!f() { set -ex; s=`git log -1 --format=%s ${1}`; git --no-pager log -1 --grep=\"^${s}$\" --no-merges ${2}; }; f"
-    tig = !tig
-    amend = commit --amend
-    fixnow = "!f() { git commit --fixup=${1} && git ri ${1}^; }; f"
-    b = !fzfez git-branches | head -n1 | xargs -r git switch
-    l = !fzfez git-log
-    t = !fzfez git-tags
-    pushall = "!f() { args=$@; git remote show -n | xargs -I{} sh -c \"set -x;git push {} $args\"; }; f"
-    pushfall = "!f() { args=$@; git remote show -n | xargs -I{} sh -c \"set -x;git pushf {} $args\"; }; f"
-    ; git-hack shortcuts
-    ; hack = hack hack
-    ; sync = hack sync
-    owners = "!f() { ref=\"$(git branch --format='%(upstream:short)'|head -n1)\"; git diff --name-only $ref | xargs -I{} git shortlog -nse $ref {} | sort -k2 | uniq -f2 | sed 's/^[ ]*//' | sort -gr | cut -f2; }; f"
-    owners = "!f() { local path=$(git ls-files --full-name $1) ref=$(git branch --format='%(upstream:short)'|head -n1); git shortlog -nse $ref $path; }; f"
-    reviewers = "!f() { ref=\"$(git branch --format='%(upstream:short)'|head -n1)\"; git diff --name-only $ref | xargs -I{} git shortlog -nse --group=trailer:reviewed-by $ref {} | sort -k2 | uniq -f2 | sed 's/^[ ]*//' | sort -gr | cut -f2; }; f"
-
-[apply]
-    # Detect whitespace errors when applying a patch
-    whitespace = fix
-
-[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
-    renameLimit = 3210
-    tool = difftastic
-
-[diff "bin"]
-    # Use `hexdump` to diff binary files
-    textconv = hexdump -v -C
-    renames = copies
-    tool = vimdiff
-
-[difftool]
-    prompt = false
-
-[difftool "difftastic"]
-    cmd = difft "$LOCAL" "$REMOTE"
-
-[pager]
-    difftool = true
-
-[fetch]
-    prune = true
-
-[submodule]
-    recurse = true
-
-[pull]
-    rebase = true
-    autostash = true
-
-[grep]
-    lineNumber = true
-
-[help]
-    # Automatically correct and execute mistyped commands
-    autocorrect = 10
-
-[merge]
-    # Include summaries of merged commits in newly created merge commit messages
-    log = true
-    defaultToUpstream = true
-    tool = vimdiff
-
-[mergetool "vimdiff"]
-    path = /usr/bin/nvim
-    conflictstyle = diff3
-    prompt = false
-
-[rebase]
-    ; instructionFormat = "%aI %an <%ae> |  %s"
-
-[rerere]
-    enabled = false
-
-[push]
-    # Use the Git 1.x.x default to avoid errors on machines with old Git
-    # installations. To use `simple` instead, add this to your `~/.extra` file:
-    # `git config --global push.default simple`. See http://git.io/mMah-w.
-    default = simple
-    # Make `git push` push relevant annotated tags when pushing branches out.
-    followTags = true
-    # Automatically setup a tracking branch
-    autoSetupRemote = true
-
-[tag]
-    gpgsign = true
-
-[safe]
-	directory = /var/tmp/portage/*
-	directory = /var/cache/distfiles/git3-src/*
-
-# URL shorthands
-
-; [url "git@github.com:"]
-;     insteadOf = "https://github.com/"
-;     pushInsteadOf = "git://github.com/"
-
-; [url "git@bitbucket.org:"]
-;     insteadOf = "https://bitbucket.org/"
-;     pushInsteadOf = "git://bitbucket.org/"
-
-; [url "git@gitlab.com:"]
-;     insteadOf = "https://gitlab.com/"
-;     pushInsteadOf = "git://gitlab.com/"
-
-; [url "git@git.sr.ht:"]
-;     insteadOf = "https://git.sr.ht/"
-;     pushInsteadOf = "git://git.sr.ht/"
-
-; [url "git@gist.github.com:"]
-;     insteadOf = "gist:"
-;     pushInsteadOf = "git://gist.github.com/"
-
-[http]
-    sslverify = true
-    cookiefile = /home/robert/.gitcookies
-
-[trailer "changetype"]
-    key = "Change-type"
-[trailer "connects"]
-    key = "Connects-to"
-[trailer "depends"]
-    key = "Depends-on"
-[trailer "changelog"]
-    key = "Changelog-entry"
-[trailer "coauthor"]
-    key = "Co-authored-by"
-[trailer "reviewed"]
-    key = "Reviewed-by"
-[trailer "tested"]
-    key = "Tested-by"
-[trailer "fixes"]
-    key = "Fixes"
-
-; TIG config
-[tig]
-    main-view = id date author commit-title:graph=yes,refs=yes
-    blame-view = date:default author id:yes,color line-number:yes,interval=1 text
-    pager-view = line-number:yes,interval=1 text
-    stage-view = line-number:yes,interval=1 text
-    log-view = line-number:yes,interval=1 text
-    blob-view = line-number:yes,interval=1 text
-    diff-view = line-number:yes,interval=1 text:yes,commit-title-overflow=no
-    line-graphics = utf-8
-    tab-size = 4
-    ignore-space = at-eol
-    ignore-case = true
-    split-view-height = 80%
-    diff-options = -m --first-parent
-    mouse = true
-    editor-line-number = yes
-    refresh-mode = auto
-    diff-highlight = true
-
-[tig "color"]
-    diff-header = default magenta
-    diff-chunk = black white
-
-[tig "bind"]
-    generic = I !@wl-copy -n "%(commit)"
-    generic = G move-last-line
-    generic = V view-pager
-    ; generic = <Ctrl-n> find-next
-    ; generic = <Ctrl-p> find-prev
-    ; generic = <Ctrl-l> scroll-right
-    ; generic = <Ctrl-h> scroll-left
-    ; generic = <Ctrl-g> refresh
-    generic = ~ :goto %(commit)^
-
-    main = g none
-    main = gg move-first-line
-    main = G move-last-line
-    main = <esc>g :toggle commit-title-graph
-
-    diff = g none
-    diff = gg move-first-line
-    diff = G move-last-line
-    diff = n :/^@@
-    diff = p :?^@@
-
-    stage = n :/^@@
-    stage = p :?^@@
-
-    pager = n :/^@@
-    pager = p :?^@@
-
-    log = n :/^commit
-    log = p :?^commit
diff --git a/.config/git/ignore b/.config/git/ignore
deleted file mode 100644
index 33b0186..0000000
--- a/.config/git/ignore
+++ /dev/null
@@ -1,60 +0,0 @@
-# Random
-*~
-._*
-Thumbs.db
-.DS_Store*
-Desktop.ini
-.idea
-ehthumbs.db
-Icon*
-Session.vim
-
-# external
-.Spotlight-V100
-.Trashes
-
-# compiled
-*.o
-*.out
-*.pyc
-*.so
-*.exe
-*.class
-*.dll
-bin/
-tags
-
-# logs and db
-*.log
-*.sql
-*.sqlite
-*.db
-
-# packages
-*.7z
-*.dmg
-*.gz
-*.iso
-*.jar
-*.rar
-*.tar
-*.zip
-
-# web stuff
-node_modules
-bower_components
-
-# personal stuff
-.todo.md
-.org.md
-
-# clangd
-.cache/
-
-# cargo
-target/debug/build/
-target/release/build/
-
-# zig
-zig-out/
-.zig-cache/