Git config
Git configuration is managed from chezmoi source and installed into $HOME.
| Concern | Source |
|---|---|
| Main git config template | home/private_readonly_dot_gitconfig.tmpl |
| Allowed signers | home/private_dot_ssh/private_executable_allowed_signers.tmpl |
| Git TUIs | home/dot_config/exact_lazygit/, home/dot_config/exact_tig/ |
Identityโ
Check the active value and the file that set it:
git config --show-origin --get user.name
git config --show-origin --get user.email
git config --show-origin --get core.sshCommand
Large repositoriesโ
The global gitconfig avoids repository-size-specific defaults such as core.fsmonitor, feature.manyFiles, and feature.experimental. Large repositories opt into performance settings through their local .git/config, so small repos do not spawn fsmonitor daemons or inherit experimental Git defaults.
For very large worktrees, keep maintenance, index, and untracked-cache settings repo-local. Avoid scalar register as durable setup in this chezmoi-managed environment because it writes scalar.repo and maintenance.repo paths into the managed global gitconfig, and the next chezmoi apply removes them. Keep core.fsmonitor=false unless a repo-specific benchmark proves the daemon is safe and worthwhile for that worktree.
Signingโ
Commit signing uses SSH signing through the 1Password signing helper. The public key selector lives on disk; the private key stays in 1Password.
Relevant files:
home/private_readonly_dot_gitconfig.tmplhome/private_dot_ssh/private_executable_allowed_signers.tmpl
GitHub CLI and dashboard configโ
| Component | Source |
|---|---|
| GitHub CLI config | home/dot_config/exact_private_gh/ |
| gh picker config | home/dot_config/exact_tmux/exact_scripts/pickers/github/readonly_gh-picker.yml |
| Managed extensions hook | run_onchange_after_05-install-gh-extensions.fish.tmpl |