Berat Bozkurt

Berat Bozkurt




Related Posts

Micro Frontend Architecture (Part 1)
19 Nisan 2025

Micro Frontend Architecture (Part 1)

The Unsung Hero of Javascript: Event Loop and Promises
20 Mart 2025

The Unsung Hero of Javascript: Event Loop and Promises

Immutable and Mutable in Javascript
23 Ekim 2024

Immutable and Mutable in Javascript

How to Use Multiple Github Accounts on macOS?

07 Ekim 2022 • 1 view•
How to Use Multiple Github Accounts on macOS?
If you are like me and use more than one github account on your computer, you must have experienced problems. Constantly changing accounts, adjusting configs... After a while, it gets annoying. That's why I wanted to share a solution I implemented today with you.
Note: What I explained is valid for the MacOS operating system.

1. Let's Create SSH Key

# First we go to the ssh directory
cd ~/.ssh  

# Here you enter your personal email address and file name.
ssh-keygen -t rsa -C "personal@mail.com" -f "personal-github" 

# here you enter your work email address and file name
ssh-keygen -t rsa -C "work@mail.com" -f "work-github" 

2. Let's Save SSH Keys to Our Computer

# Here we add the ssh key of your personal github account
ssh-add -K ~/.ssh/personal-github

# Here we add the ssh key of your work github account
ssh-add -K ~/.ssh/work-github 

3. Let's Add SSH Keys to Our Github Accounts

### Let's copy our ssh key and save it to our personal github account.
pbcopy < ~/.ssh/personal-github.pub
Let's add the copied code here from Github settings and save this code by saying "Add new SSH". Follow the same process for the next step.
### Let's copy our ssh key and save it to our work github account.
pbcopy < ~/.ssh/work-github.pub

4. Let's Create the Config File

# Let's create and edit the config file.
touch ~/.ssh/config
open -e ~/.ssh/config
In the window that opens, let's add the following configurations.
#personal
Host personal-github.com
	HostName github.com
	User git
	IdentityFile ~/.ssh/personal-github

#work
Host work-github.com
	HostName github.com
	User git
	IdentityFile ~/.ssh/work-github

5. Let's Create Custom Config for Business Projects

We need to create a special config file for our work-related projects. To do this, we will keep all the work-related ones in one folder and pull the config file from there. In this way, when you switch to the work folder, you will work with different git information, and when you switch to your personal projects, you will work with a different git account. In this way, you can use your work and personal accounts in a healthy way without being interrupted.
# Go to your work folder and create .gitconfig
touch ~/work/.gitconfig
open -e ~/work/.gitconfig
Now let's add the following configurations.
[user]
    name = Berat Bozkurt
    email = work@mail.com
Now, as the last step, let's include the configurations we created in the work folder in our main .gitconfig file. To do this, simply add the following configuration.
# Let's open the main .gitconfig file.
open -e ~/.gitconfig

# Let's add these configurations in the window that opens.
[user]
    name = Berat Bozkurt
    email = personal@mail.com
[includeIf "gitdir:~/works/"]
    path = ~/works/.gitconfig
Sit back and look at your code. Don't bother constantly switching accounts and logging in. Enjoy coding...
Regards!
Resources:
  • How to manage multiple GitHub accounts on a single machine with SSH keys
  • Working with multiple git configurations (@hasantezcan)
•
Share on X (Twitter)