SSH¶
Key Generation¶
Generate a secure key
ssh-keygen -t ed25519 -C "your_email@example.com" -f ~/.ssh/id_ed25519_personal
# -t algo -C comment (email) -f filename
Global Git Configuration¶
Organize your projects into subdirectories (e.g., ~/dev/personal and ~/dev/work) to trigger automatic identity switching.
The Master Config (~/.gitconfig)¶
~/.gitconfig
[user]
name = Default User
email = default@email.com
[includeIf "gitdir:~/dev/personal/"]
path = ~/.config/git/personal.gitconfig
[includeIf "gitdir:~/dev/work/"]
path = ~/.config/git/work.gitconfig
[includeIf "gitdir:C:/dev/personal/"]
path = ~/.config/git/personal.gitconfig
Environment Overrides¶
The files inside ~/.config/git/ will override your global settings automatically.