This product was not featured by Product Hunt yet. It will not be visible on their landing page and won't be ranked (cannot win product of the day regardless of upvotes).
GHSwitch is a lightweight desktop app for macOS and Windows that lets you instantly switch between multiple Git user configurations from your system tray. No more git config commands — just click your profile in the tray. Add profiles with a name, email, and optional signing key (GPG/SSH). Switch between work, personal, and open-source identities in one click. Lives quietly in your system tray, starts at login if you want, and stays out of your way.
I built GHSwitch because I lived the pain daily. I maintain separate Git identities for my day job, personal projects, and open-source contributions. Every time I switched contexts, I'd run `git config --global user.name`, `user.email`, and `user.signingkey` by hand. And occasionally I'd forget — committing to a work repo with my personal email, or vice versa.
I literally had a sticky note on my monitor with the commands.
I looked for existing solutions. There are CLI tools, shell scripts, and git aliases — but nothing that lived in my system tray and worked with zero friction. I wanted something that was always there, always one click away, and never required me to open a terminal just to switch contexts.
So I built GHSwitch.
How it works: It lives in your system tray — macOS menu bar or Windows taskbar. Click it, see all your profiles, click the one you want. Done. Your Git config is updated instantly.
Profiles are stored in your `~/.gitconfig` under `ghswitch..*` keys — the same config file Git already uses. No proprietary database, no cloud sync, no accounts. You own your data completely.
Pricing: GHSwitch is launching completely for free! I've set it up on Polar.sh with a "pay what you want" model defaulting to $3. If you just want to use the app, simply change the amount to $0 and download it for free. If you find it helpful and want to support the project, any contribution is hugely appreciated!
What's next: I have a few ideas I'm exploring — per-repository auto-detection based on the remote URL, custom Git config overrides per profile, and maybe a CLI companion for power users. I'd love to hear what would make this tool most valuable for your workflow.
This started as a personal tool to scratch my own itch. I hope it saves you as much friction as it's saved me. Happy to answer any questions and hear your feedback!
How does it handle conflicts when two profiles share the same git config scope and you switch mid-repo, does it just rewrite local config or actually stash anything first?
how does it handle conflicts if two profiles share the same git config scope, and is there a sync option for the profiles across multiple machines
Does it also swap the SSH config block or GPG agent signing behavior automatically, or do I still need to manage those separately when switching profiles?
Finally a tray app that doesn't feel bloated. Clicking between my work and personal profiles is way faster than digging through git config every time.
The tray menu integration is so clean, it feels like a native macOS utility rather than another third-party app cluttering the menu bar.
About GHSwitch on Product Hunt
“Switch Git profiles without leaving your flow”
GHSwitch was submitted on Product Hunt and earned 9 upvotes and 10 comments, placing #28 on the daily leaderboard. GHSwitch is a lightweight desktop app for macOS and Windows that lets you instantly switch between multiple Git user configurations from your system tray. No more git config commands — just click your profile in the tray. Add profiles with a name, email, and optional signing key (GPG/SSH). Switch between work, personal, and open-source identities in one click. Lives quietly in your system tray, starts at login if you want, and stays out of your way.
GHSwitch was featured in Developer Tools (515.4k followers), GitHub (41.3k followers) and Menu Bar Apps (12.2k followers) on Product Hunt. Together, these topics include over 102k products, making this a competitive space to launch in.
Who hunted GHSwitch?
GHSwitch was hunted by Neha Singh. A “hunter” on Product Hunt is the community member who submits a product to the platform — uploading the images, the link, and tagging the makers behind it. Hunters typically write the first comment explaining why a product is worth attention, and their followers are notified the moment they post. Around 79% of featured launches on Product Hunt are self-hunted by their makers, but a well-known hunter still acts as a signal of quality to the rest of the community. See the full all-time top hunters leaderboard to discover who is shaping the Product Hunt ecosystem.
Want to see how GHSwitch stacked up against nearby launches in real time? Check out the live launch dashboard for upvote speed charts, proximity comparisons, and more analytics.
Hey Product Hunt! 👋
I built GHSwitch because I lived the pain daily. I maintain separate Git identities for my day job, personal projects, and open-source contributions. Every time I switched contexts, I'd run `git config --global user.name`, `user.email`, and `user.signingkey` by hand. And occasionally I'd forget — committing to a work repo with my personal email, or vice versa.
I literally had a sticky note on my monitor with the commands.
I looked for existing solutions. There are CLI tools, shell scripts, and git aliases — but nothing that lived in my system tray and worked with zero friction. I wanted something that was always there, always one click away, and never required me to open a terminal just to switch contexts.
So I built GHSwitch.
How it works: It lives in your system tray — macOS menu bar or Windows taskbar. Click it, see all your profiles, click the one you want. Done. Your Git config is updated instantly.
Profiles are stored in your `~/.gitconfig` under `ghswitch..*` keys — the same config file Git already uses. No proprietary database, no cloud sync, no accounts. You own your data completely.
Pricing: GHSwitch is launching completely for free! I've set it up on Polar.sh with a "pay what you want" model defaulting to $3. If you just want to use the app, simply change the amount to $0 and download it for free. If you find it helpful and want to support the project, any contribution is hugely appreciated!
What's next: I have a few ideas I'm exploring — per-repository auto-detection based on the remote URL, custom Git config overrides per profile, and maybe a CLI companion for power users. I'd love to hear what would make this tool most valuable for your workflow.
This started as a personal tool to scratch my own itch. I hope it saves you as much friction as it's saved me. Happy to answer any questions and hear your feedback!
— Neha Singh & Achuth Hadnoor