Bootstrap personal Git, GitHub CLI, and SSH configuration on a new macOS install.
This project intentionally separates identity from terminal appearance. Terminal and shell visual setup lives in macos-terminal-bootstrap; this repository only handles Git/GitHub/SSH.
- Personal GitHub user:
ramonlimaramos - Personal Git email:
ramonlimaramos@gmail.com - Personal SSH key:
~/.ssh/id_ed25519 - Personal workspace:
~/Developer/personal/ - Professional workspace:
~/Developer/professional/ - Compatibility professional workspaces:
~/Developer/podium/,~/Developer/podium-github/ - Default branch:
main - GitHub SSH transport:
ssh.github.com:443
GitHub SSH is configured through port 443 because some networks block GitHub SSH on port 22.
cd ~/Developer/personal/shell/ramon-git-bootstrap
./install.shTo preview changes:
./install.sh --dry-run- Installs Homebrew when missing.
- Installs
git,gh, andgit-deltawhen missing. - Generates
~/.ssh/id_ed25519when the personal SSH key is missing. - Copies the public key to the clipboard.
- Opens GitHub SSH key settings.
- Installs:
~/.gitconfig~/.gitconfig-personal~/.gitconfig-professional~/.ssh/config
- Runs GitHub CLI auth with the personal account when needed.
- Backs up overwritten files to:
~/.git-bootstrap-backups/<timestamp>/The generated ~/.gitconfig uses includeIf:
- Repos under
~/Developer/personal/use~/.gitconfig-personal. - Repos under
~/Developer/professional/use~/.gitconfig-professional. - Existing compatibility paths
~/Developer/podium/and~/Developer/podium-github/also use~/.gitconfig-professional.
Commit signing is intentionally not configured in v1. It can be added later with SSH signing once the identity split is stable.
zsh -n install.sh
shellcheck install.sh