feat(git): Templatize git config for per-host/user identity override
Convert private_dot_config/git/config to config.tmpl so that the [user] name/email can be overridden per host/user via the existing `configs` key in .chezmoidata/hosts*.yaml, falling back to the default identity (Xavier Logerais / xavier@logerais.com) when no override is defined. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
co-authored by
Copilot
parent
db34347d55
commit
e17a18d7c5
@@ -1,47 +0,0 @@
|
|||||||
[core]
|
|
||||||
excludesfile = ~/.config/git/ignore
|
|
||||||
attributesfile = ~/.config/git/attributes
|
|
||||||
pager = delta
|
|
||||||
|
|
||||||
[user]
|
|
||||||
name = Xavier Logerais
|
|
||||||
email = xavier@logerais.com
|
|
||||||
|
|
||||||
[credential]
|
|
||||||
helper = cache
|
|
||||||
|
|
||||||
[credential "https://gitea.logerais.com"]
|
|
||||||
helper = cache
|
|
||||||
helper = !tea login helper
|
|
||||||
|
|
||||||
[credential "https://gitea.cloud.logerais.com"]
|
|
||||||
helper = cache
|
|
||||||
helper = !tea login helper
|
|
||||||
|
|
||||||
[init]
|
|
||||||
defaultBranch = main
|
|
||||||
|
|
||||||
[rerere]
|
|
||||||
enabled = 1
|
|
||||||
|
|
||||||
[merge]
|
|
||||||
conflictstyle = diff3
|
|
||||||
|
|
||||||
[page]
|
|
||||||
diff = delta
|
|
||||||
show = delta
|
|
||||||
log = delta
|
|
||||||
blame = delta
|
|
||||||
reflog = delta
|
|
||||||
|
|
||||||
[delta]
|
|
||||||
navigate = true
|
|
||||||
side-by-side = true
|
|
||||||
dark = true
|
|
||||||
syntax-theme = Coldark-Dark
|
|
||||||
|
|
||||||
[interactive]
|
|
||||||
diffFilter = delta --color-only
|
|
||||||
|
|
||||||
[alias]
|
|
||||||
tree = !git ls-files | tree --fromfile -C
|
|
||||||
@@ -0,0 +1,64 @@
|
|||||||
|
{{- $hostname := output "hostname" | trim -}}
|
||||||
|
{{- $username := .chezmoi.username -}}
|
||||||
|
{{- $currentHost := index .hosts $hostname -}}
|
||||||
|
{{- $currentUser := "" -}}
|
||||||
|
{{- if $currentHost -}}
|
||||||
|
{{- if hasKey $currentHost.users $username -}}
|
||||||
|
{{- $currentUser = index $currentHost.users $username -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- $gitConfig := dict -}}
|
||||||
|
{{- if and $currentUser (hasKey $currentUser "configs") -}}
|
||||||
|
{{- if hasKey $currentUser.configs "git" -}}
|
||||||
|
{{- $gitConfig = $currentUser.configs.git -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- $gitName := $gitConfig.name | default "Xavier Logerais" -}}
|
||||||
|
{{- $gitEmail := $gitConfig.email | default "xavier@logerais.com" -}}
|
||||||
|
[core]
|
||||||
|
excludesfile = ~/.config/git/ignore
|
||||||
|
attributesfile = ~/.config/git/attributes
|
||||||
|
pager = delta
|
||||||
|
|
||||||
|
[user]
|
||||||
|
name = {{ $gitName }}
|
||||||
|
email = {{ $gitEmail }}
|
||||||
|
|
||||||
|
[credential]
|
||||||
|
helper = cache
|
||||||
|
|
||||||
|
[credential "https://gitea.logerais.com"]
|
||||||
|
helper = cache
|
||||||
|
helper = !tea login helper
|
||||||
|
|
||||||
|
[credential "https://gitea.cloud.logerais.com"]
|
||||||
|
helper = cache
|
||||||
|
helper = !tea login helper
|
||||||
|
|
||||||
|
[init]
|
||||||
|
defaultBranch = main
|
||||||
|
|
||||||
|
[rerere]
|
||||||
|
enabled = 1
|
||||||
|
|
||||||
|
[merge]
|
||||||
|
conflictstyle = diff3
|
||||||
|
|
||||||
|
[page]
|
||||||
|
diff = delta
|
||||||
|
show = delta
|
||||||
|
log = delta
|
||||||
|
blame = delta
|
||||||
|
reflog = delta
|
||||||
|
|
||||||
|
[delta]
|
||||||
|
navigate = true
|
||||||
|
side-by-side = true
|
||||||
|
dark = true
|
||||||
|
syntax-theme = Coldark-Dark
|
||||||
|
|
||||||
|
[interactive]
|
||||||
|
diffFilter = delta --color-only
|
||||||
|
|
||||||
|
[alias]
|
||||||
|
tree = !git ls-files | tree --fromfile -C
|
||||||
Reference in New Issue
Block a user