# me [user] email = alpha@kejadlen.dev name = Alpha Chen signingkey = ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINCttH8nEfk1uZ2291P4mbCoNcHxnr9iNBlbZckykeZ8 # remotes [fetch] prune = true [pull] rebase = true [push] default = current followTags = true recurseSubmodules = on-demand autoSetupRemote = true [url "git@github.com:"] insteadof = https://github.com/ [url "git@git.kejadlen.dev:"] insteadof = https://git.kejadlen.dev/ [transfer] fsckobjects = true # ui [color] ui = auto diff = true [column] ui = auto [advice] detachedHead = false [core] autocrlf = false safecrlf = true quotepath = false sparecheckout = true editor = nvim fsmonitor = true [alias] g = grep --break --heading --line-number standup = !git log --all --date=short --no-merges --pretty=format:\"%h %ad %s%d\" --since=1.weeks --author=`git config user.email` lol = log --graph --decorate --pretty=oneline --abbrev-commit lola = log --graph --decorate --pretty=oneline --abbrev-commit --all s = status --short --branch latest = for-each-ref --count=10 --sort=-committerdate --format='%(committerdate:relative) %(refname:short)' root = !pwd push-f = push --force-with-lease stsh = stash --keep-index --include-untracked staash = stash --include-untracked fix = commit --fixup @ ctags = !.git/hooks/ctags lg = log --date=format:'%a %b %e, %Y' --pretty=format:'%C(yellow)%h%C(reset) %s %C(cyan)%cd%C(reset) %C(blue)%an%C(reset) %C(green)%d%C(reset)' --graph ; https://roadrunnertwice.dreamwidth.org/596185.html allbut = "!function fn { git push --force-with-lease origin $(git rev-parse HEAD~${1:-1}):$(git branch --show-current); }; fn" [grep] extendRegexp = true lineNumber = true [apply] whitespace = warn [init] templatedir = ~/.git_templates defaultBranch = main [tag] sort = version:refname [rebase] autoStash = true autoSquash = true stat = true updateRefs = true [interactive] singlekey = true ; diffFilter = delta --color-only --features=interactive [submodule] fetchJobs = 4 recurse = true [commit] verbose = true gpgsign = true [filter "alfredworkflow"] clean = alfredworkflow.clean [filter "dash-prefs"] clean = clean-dash-prefs [filter "lfs"] process = git-lfs filter-process required = true clean = git-lfs clean -- %f smudge = git-lfs smudge -- %f [advice] addEmptyPathspec = false [rerere] enabled = true autoUpdate = true [branch] autoSetupMerge = simple sort = -committerdate [log] follow = true date = iso [status] submoduleSummary = true # diff things [diff] algorithm = histogram external = difft ; compactionHeuristic = true indentHeuristic = true colorMoved = default submodule = log renames = copy [difftool] prompt = false [difftool "sourcetree"] cmd = opendiff \"$LOCAL\" \"$REMOTE\" [difftool "kaleidoscope"] cmd = ksdiff --partial-changeset --relative-path \"$MERGED\" -- \"$LOCAL\" \"$REMOTE\" [difftool "icdiff"] cmd = icdiff --line-numbers --no-bold \"$LOCAL\" \"$REMOTE\" [difftool "difftastic"] cmd = difft "$LOCAL" "$REMOTE" [delta] features = decorations navigate = true line-numbers = true side-by-side = true line-numbers-right-format = "│ " [delta "decorations"] hunk-header-style = omit # merging [merge] conflictstyle = zdiff3 ff = false tool = vimdiff [mergetool] keepBackup = false [mergetool "vimdiff"] path = nvim [mergetool "sourcetree"] cmd = /Applications/SourceTree.app/Contents/Resources/opendiff-w.sh \"$LOCAL\" \"$REMOTE\" -ancestor \"$BASE\" -merge \"$MERGED\" trustExitCode = true [mergetool "kaleidoscope"] cmd = ksdiff --merge --output \"$MERGED\" --base \"$BASE\" -- \"$LOCAL\" --snapshot \"$REMOTE\" --snapshot trustExitCode = true # signing commits with 1Password [gpg] format = ssh [gpg "ssh"] program = "/Applications/1Password.app/Contents/MacOS/op-ssh-sign" [include] path = ~/.gitconfig.local