Installation
Install gitswitch on macOS or Linux
gitswitch is a single Go binary. macOS and Linux, Intel and Apple Silicon/ARM.
Homebrew
brew install aksisonline/tap/gitswitchRecommended — it handles PATH, updates, and uninstall cleanly.
brew upgrade gitswitch # latercurl
curl -fsSL https://raw.githubusercontent.com/aksisonline/gitswitch/main/.github/install.sh | bashDownloads the right binary for your OS and architecture into /usr/local/bin. Upgrade later with gitswitch upgrade.
Go
go install github.com/aksisonline/gitswitch@latestRequires Go 1.21+.
From source
git clone https://github.com/aksisonline/gitswitch
cd gitswitch
make installCheck it worked
gitswitch versiongitswitch v0.3.0
Already on latest version.What you need installed
git | Required. Missing? The first time you run bare gitswitch on a machine with no profiles yet, it offers to install it for you — no separate step needed. |
gh (GitHub CLI) | Optional, but recommended. gitswitch works fine without it — but HTTPS push routing and Session Isolation get their tokens from gh, so those two features install but stay inert until gh is set up. That first-run check offers to install it too. |
Check both at any time:
gitswitch doctorRun it
gitswitchThat's the whole "then set it up" step — first run on a machine with no profiles checks for git/gh and offers to install what's missing, then opens a short wizard that gets you a working account.
Want shell integration too (prompt segment, nudges, HTTPS push routing, Session Isolation)? That's a separate, optional step:
gitswitch shellEverything is opt-out, defaults are sensible, and it's safe to re-run. See Shell Integration.
Then head to the Quick Start.
Staying up to date
gitswitch version # what am I on? is there anything newer?
gitswitch upgrade # get itgitswitch also tells you inside the TUI when a new release lands, and shows a "What's New" screen after a feature release. Want the pre-release builds? See Release Channels.
Uninstall
gitswitch uninstall # remove shell integration, HTTPS routing, gh wrapper
brew uninstall gitswitch # then remove the binary
rm -rf ~/.config/gitswitch # and your profiles, if you're sure