GitGuise automatically routes commits, pushes, and clones to the right GitHub account by reading each repo's remote URL. Unlike gh auth switch (swaps auth only) or includeIf (folder-based), it handles key, remote, and identity in one step. Setup wizard, unlimited profiles, cross-platform. Free and open source.
No reviews yetBe the first to leave a review for GitGuise
Maker
📌
Hey Product Hunt 👋
I run two GitHub accounts on one machine — one personal, one for work. For years my "fix" was two bash aliases that swapped my global git config. It worked, as long as I remembered to run them. I didn't, a lot.
Forget to switch before pulling a private work repo and GitHub doesn't say "wrong account." It says "Repository not found" — on a repo you own. Then you're editing SSH config, checking which key is loaded, wondering if your access got pulled.
Every workaround I tried (gh auth switch, includeIf, per-repo git config) solved part of the problem but still asked me to remember something.
So I built GitGuise. It reads each repo's remote URL and pairs it with the right identity — key, remote, and commit email. Nothing to switch. No folder rules. Just git.
- Setup wizard for SSH keys, config, and hooks
- Unlimited profiles (personal, work, freelance, whatever)
- Repo scanner shows which account each local repo belongs to
- Export/import config for new machines
- Windows, macOS, Linux
- Free and open source (MIT)
Would love feedback, feature requests, and bug reports. Genuinely curious how others have solved this — always feels like everyone has their own hack.
Report
This solves a very specific but painful problem — accidentally committing under your personal account instead of work (or vice versa) is such an easy mistake to make. Does it detect based on repo/folder path, or does it require manual rule setup per project?
Report
Maker
@ark_y_k Great question, Yuki. It detects based on the repo's remote URL, not folder path. So if your remote is git@github.com:acme/internal.git, GitGuise matches "acme" to your work profile and uses that key + email automatically. No manual rules per project. The only "setup" is defining your profiles once during the wizard — after that every repo just works based on where it's pointing.
Report
The remote URL matching is clever, but I'd love to see a fallback for repos without a remote configured yet, like a CLI prompt asking which profile to use when you run git init. Right now I'm guessing it silently picks the default and you don't find out until later.
Report
Maker
@derya69sb Great catch, Derya. You're right that git init on a repo without a remote yet doesn't prompt. Right now GitGuise sets the identity when you run "git remote add", but there's a real gap between init and that point. A CLI prompt on git init is the right fix. Adding it to the next release or feel free to contribute 🙌.
Report
the setup wizard actually sounds like the move here, most git identity tools just dump config files on you and wish you luck. handling key, remote, and identity in one step is genuinely thoughtful, downloading this tonight.
Report
Maker
@adilaraculb7 Thanks Adil — really appreciate that. The "key + remote + identity in one step" thing was the whole reason I built it. Every existing tool solved one of the three and left the other two for you to remember. Would love to hear how it goes for you.
This solves a very specific but painful problem — accidentally committing under your personal account instead of work (or vice versa) is such an easy mistake to make. Does it detect based on repo/folder path, or does it require manual rule setup per project?
@ark_y_k Great question, Yuki. It detects based on the repo's remote URL, not folder path. So if your remote is git@github.com:acme/internal.git, GitGuise matches "acme" to your work profile and uses that key + email automatically. No manual rules per project. The only "setup" is defining your profiles once during the wizard — after that every repo just works based on where it's pointing.
The remote URL matching is clever, but I'd love to see a fallback for repos without a remote configured yet, like a CLI prompt asking which profile to use when you run git init. Right now I'm guessing it silently picks the default and you don't find out until later.
@derya69sb Great catch, Derya. You're right that git init on a repo without a remote yet doesn't prompt. Right now GitGuise sets the identity when you run "git remote add", but there's a real gap between init and that point. A CLI prompt on git init is the right fix. Adding it to the next release or feel free to contribute 🙌.
the setup wizard actually sounds like the move here, most git identity tools just dump config files on you and wish you luck. handling key, remote, and identity in one step is genuinely thoughtful, downloading this tonight.
@adilaraculb7 Thanks Adil — really appreciate that. The "key + remote + identity in one step" thing was the whole reason I built it. Every existing tool solved one of the three and left the other two for you to remember. Would love to hear how it goes for you.