Introduction
GitPersona is a desktop application for managing multiple Git identities and switching between them safely. It keeps your Git config, SSH keys, and HTTPS credentials in sync with whichever account a repository belongs to — so you never author a commit as the wrong person again.
The problem
If you work across more than one Git account — a personal one, an employer's, a client's — a single machine has to juggle several identities at once. Git itself has no concept of "who am I right now"; it just reads whatever user.name and user.email happen to be configured, globally or per repository.
The usual workarounds are fragile and easy to get subtly wrong:
- Editing
~/.gitconfigby hand every time you switch context. - Hand-maintaining
includeIfconditional includes, per-host SSH aliases, and credential-helper entries that drift out of sync. - Discovering the mistake only after a commit is pushed under the wrong email.
What GitPersona does
GitPersona models each identity as a profile and makes the whole identity — author name and email, an optional signing key, an SSH key, and an HTTPS credential — switch together as a unit. It manages the same standard Git mechanisms you would configure by hand, with validation on top.
- Profiles bundle a Git identity you can activate globally or bind to specific repositories.
- SSH keys and HTTPS credentials attach to a profile and follow it when it activates.
- Rules and Smart Switchingapply the right profile automatically based on a repository's path or remote.
How it works
GitPersona runs entirely on your machine. Applying a profile writes standard Git configuration and updates a managed block in your SSH config; per-repository assignments pin the identity into that repository's local Git config. Secrets — HTTPS tokens — are stored in your operating system's credential vault, never in GitPersona's own data files.
What GitPersona is not
- It is not a Git replacement. Your existing Git commands, hosts, and workflows are untouched.
- It does not rewrite history or touch your working tree. It only manages configuration, keys, and credentials.
- It is not a key generator for signing. GPG signing references a signing key you already have (see GPG signing).
Next steps
- Install GitPersona on Windows or Linux.
- Create your first profile from the onboarding flow.
- Learn how switching profiles changes your active identity.