Generate and add SSH keys

cd ~/.ssh  
 
ssh-keygen -t rsa -C "account1@gmail.com" -f "github-nish"  
ssh-keygen -t rsa -C "account2@gmail.com" -f "github-nishanth"  
 
# -C Commet
# -f Filename
 
ssh-add --apple-use-keychain ~/.ssh/github-nish
ssh-add --apple-use-keychain ~/.ssh/github-nishanth
 
cat ~/.ssh/github-nish | pbcopy
# add the key to GitHub

Configure

Create a config file in ~/.ssh,

# account1  
Host github.com-nish  
    HostName github.com  
    User git  
    IdentityFile ~/.ssh/github-nish
    
# account2
Host github.com-nishanth  
    HostName github.com  
    User git  
    IdentityFile ~/.ssh/github-nishanth

Global config,

git config --global user.name "nish"
git config --global user.email "account1@gmail.com"

Cloning repos using secondary accounts

git clone git@github.com-nishanth:{the-repo-organisation-or-owner-user-name}/{the-repo-name}.git

Set local git config,

git config user.name "nishanth"
git config user.email "account2@gmail.com"

Refs

  1. https://medium.com/@ibrahimlawal/developing-with-multiple-github-accounts-on-one-macbook-94ff6d4ab9ca