Why It Matters in Daily Development

git-multi-ssh helps developers who work across personal, client, and company repositories. It routes the correct SSH identity automatically, so you do not have to keep switching keys or re-checking your account before every push.

Primary use cases

  • Using multiple Git providers (GitHub, GitLab, Bitbucket) from one machine
  • Separating personal and work identities across different repository folders
  • Avoiding wrong-author commits in audits, open source, and enterprise projects

How it improves productivity

  • Removes repeated manual key switching and identity checks
  • Prevents rework caused by incorrect commit email or account
  • Keeps review and release workflows focused on code, not Git identity cleanup

Installation Guide

Full OS support is available. Pick the path that matches your terminal and preferences.

Option A - Manual from source

🍎 macOS · 🪟 Windows · 🐧 Linux

Recommended when you want local source control, custom edits, or contribution workflow.

🍎 macOS / 🐧 Linux

git clone https://github.com/sahulkola/git-devkit.git ~/git-devkit
cd ~/git-devkit
npm install
npm link

🪟 Windows PowerShell

git clone https://github.com/sahulkola/git-devkit.git $env:USERPROFILE\git-devkit
cd $env:USERPROFILE\git-devkit
npm install
npm link

🪟 Windows Command Prompt

git clone https://github.com/sahulkola/git-devkit.git %USERPROFILE%\git-devkit
cd %USERPROFILE%\git-devkit
npm install
npm link

Quick Daily Guide

Short day-to-day workflow with the key multi-SSH features you will use most often.

Key features used daily

  • Account-based SSH host aliases (personal, work, client)
  • No repeated remote URL rewrites while switching repositories
  • Safer push/pull with identity mapped by host alias

Quick start commands

# Clone with alias hosts (example)
git clone git@github-personal:username/my-tooling.git
git clone git@github-work:my-org/platform-api.git

# Verify once
git remote -v

# Work normally
git checkout -b feat/add-healthcheck
git push -u origin feat/add-healthcheck
See more daily examples →

Scenarios and Mitigations

See practical situations that happen without multi-SSH setup and how this library mitigates each one.

How to use Multi-SSH in daily workflow →
View all scenarios and mitigations →

Requirements

  • Git ≥ 2.0
  • Node.js ≥ 18 (for git-multi-ssh)
  • Terminal support: Bash/Zsh (macOS or Linux), or PowerShell/CMD (Windows)
  • Compatible with macOS, Windows, and Linux