diff --git a/git/.gitconfig b/git/.gitconfig index 0721fb8..92fbb45 100644 --- a/git/.gitconfig +++ b/git/.gitconfig @@ -1,8 +1,13 @@ +# See: https://jvns.ca/blog/2024/02/16/popular-git-config-options/ +# See: https://blog.gitbutler.com/how-git-core-devs-configure-git/ [core] editor = nvim autocrlf = input pager = delta - excludeFiles = ~/.gitignore + excludesFiles = ~/.gitignore + +[column] + ui = auto [interactive] diffFilter = delta --color-only @@ -16,16 +21,28 @@ conflictstyle = zdiff3 [diff] - colorMoved = default + colorMoved = plain algorithm = histogram + mnemonicPrefix = true + renames = true [rebase] - autosquash = true - autostash = true + autoSquash = true + autoStash = true + updateRefs = true [push] - default = current + default = simple autoSetupRemote = true + followTags = true + +[fetch] + prune = true + pruneTags = true + all = true + +[pull] + rebase = true [init] defaultBranch = main @@ -35,9 +52,10 @@ [rerere] enabled = true + autoupdate = true [help] - autocorrect = 10 + autocorrect = prompt [log] date = iso @@ -48,6 +66,9 @@ [color] ui = auto +[tag] + sort = version:refname + # See: https://git-scm.com/docs/git-config#_includes [includeIf "gitdir:~/src/personal/**"] path = ~/.gitconfig-personal