I was thinking about making a new GitHub account so the name matches the rest of my names across the web. What kind of issues will I run into on my computer? That is to say, is is possible to be rocking two GitHub accounts on the same computer when it comes to running things like VS Code?
I would move my stuff to my new account, obviously.
---
Yes. Running **multiple GitHub accounts on the same computer is completely normal**, and Git supports it cleanly. Developers often do this for **work vs personal accounts**. Your Linux Mint setup and tools like **Git, VS Code, and the terminal** will handle it without much friction.
The trick is separating **authentication** and **identity**.
---
# The Three Things You Actually Need to Manage
## 1. SSH Keys (most important)
Each GitHub account should use its **own SSH key**.
Example:
```
~/.ssh/id_ed25519_wmprkr
~/.ssh/id_ed25519_oldaccount
```
Generate them like this:
```bash
ssh-keygen -t ed25519 -C "wmprkr@github" -f ~/.ssh/id_ed25519_wmprkr
ssh-keygen -t ed25519 -C "oldaccount@github" -f ~/.ssh/id_ed25519_old
```
Then add them to GitHub under:
**GitHub → Settings → SSH and GPG keys**
---
## 2. SSH Config File
This is what lets your computer know **which account to use for which repo**.
Edit:
```
~/.ssh/config
```
Example:
```
Host github-wmprkr
HostName github.com
User git
IdentityFile ~/.ssh/id_ed25519_wmprkr
Host github-old
HostName github.com
User git
IdentityFile ~/.ssh/id_ed25519_old
```
Now cloning works like this:
```
git clone git@github-wmprkr:wmprkr/repo-name.git
```
instead of
```
[email protected]:wmprkr/repo-name.git
```
That hostname alias selects the key.
---
## 3. Git Identity (per-repo)
Git commits include a **name and email**. You can change this per repository.
Example inside a repo:
```
git config user.name "William Parker"
git config user.email "
[email protected]"
```
or globally:
```
git config --global user.name "William Parker"
git config --global user.email "
[email protected]"
```
Most people keep **global personal** and override for work repos.
---
# How VS Code Handles This
VS Code just uses **whatever Git is configured to do**, so once SSH is set up:
- VS Code works normally
- Git pulls/pushes normally
- No extra configuration needed
The only difference you'll see is the **remote URL** of the repo.
Example:
```
git remote -v
```
might show:
```
git@github-wmprkr:wmprkr/quiettype.git
```
---
# Moving Repositories to the New Account
Once the new account exists you can simply:
### Option A — Transfer ownership
Best method.
GitHub supports:
```
Settings → Transfer ownership
```
Your stars, issues, etc stay intact.
---
### Option B — Change remote
If you just recreate repos:
```
git remote set-url origin git@github-wmprkr:wmprkr/repo.git
```
---
# What Will NOT Break
- VS Code
- your local repos
- your commit history
- Git itself
- SSH
Everything continues to work.
---
# The Only Thing That Might Trip You Up
Old repositories may still point to:
```
[email protected]:oldaccount/repo.git
```
Just run:
```
git remote set-url origin NEW_URL
```
once.
---
# A Nerdy Bonus Trick (Optional)
You can automate account switching using **directory-based Git configs**.
Example:
```
~/code/wmprkr/*
```
automatically uses your new account.
This is done with:
```
~/.gitconfig
```
```
[includeIf "gitdir:~/code/wmprkr/"]
path = ~/.gitconfig-wmprkr
```
Very clean setup.
---
# Honest Recommendation
Given how much you're building (themes, repos, digital garden tools, etc.):
**Yes — switch to `wmprkr`.**
Brand consistency across:
- GitHub
- domains
- blog
- photography
- projects
is worth it.
And GitHub repos transfer easily.
---
If you'd like, I can also show you a **very clean Linux Mint setup for multiple GitHub accounts** that takes about **3 minutes** and never causes confusion again. It’s a small trick using SSH aliases that feels almost magical once it’s set up.