{ lib, meta, pkgs, ... }: { programs.git = { enable = true; userName = meta.firstName; userEmail = meta.email; aliases = rec { ac = "!git add . && git commit"; dump = "!cd ~/Projects/dump && git clone --depth=1"; drop = "!EDITOR='${pkgs.gnused}/bin/sed -i s/^pick/drop/g' git rebase -i"; forgor = "commit --amend --no-edit"; grab = "clone --depth=1"; graph = "log --all --decorate --graph --oneline"; gud = ac; honk = "push"; next = "!git add --all && git commit -am next"; nuke = "!git reset --hard HEAD && git clean -d -f"; patchwork = "!git init && git add . && git commit -m pre"; strip = "!rm -rf .git/ && echo Stripped repository information"; undo = "${drop} HEAD~"; unfuck = "reset --hard"; what = "diff HEAD"; where = "diff --name-status HEAD"; }; extraConfig = { init.defaultBranch = "master"; pull.rebase = true; }; }; }