Using different SSH keys in multiple Bitbucket accounts

Note: Original blog post HERE.

Create a key for each of your accounts

To generate a new key pair simply run this command in the ~/.ssh/ folder:

ssh-keygen -t rsa -C "user1" -f "user1"

The -C option is a comment to help identify the key. The -f option specifies the file name. Repeat the above for each Bitbucket account you want to use.

Add the public key to the correct Bitbucket account

To add a public key to a Bitbucket account, you need to go to the Bitbucket Settings Screen. SelectSSH Keysin the left side menu and clickAdd key.

Configure SSH

In ~/.ssh/ create a file called config with contents based on this:

#user1 account
    User git
    IdentityFile ~/.ssh/user1
    IdentitiesOnly yes

#user2 account
    User git
    IdentityFile ~/.ssh/user2
    IdentitiesOnly yes

Replace user1 or user2 with your Bitbucket usernames.

Configure your Git repo

If you don’t have a local copy of your repo, you have to run the following command to clone a Bitbucket repository:

git clone

If you already have a local copy, you’ll need to update the origin:

git remote set-url origin

Now go to the local Git repo that you want to configure and enter:

git config "user1"
git config ""

Where user1 matches the values you used earlier in your ssh config.

You can now git push as normal and the correct key will automatically be used.