This means, on your local machine, you haven't made any SSH keys. Not to worry. Here's how to fix:
- Open git bash (Use the Windows search. To find it, type "git bash") or the Mac Terminal. Pro Tip: You can use any
*nix
based command prompt (but not the default Windows Command Prompt!) - Type
cd ~/.ssh
. This will take you to the root directory for Git (LikelyC:\Users\[YOUR-USER-NAME]\.ssh\
on Windows) - Within the
.ssh
folder, there should be these two files:id_rsa
andid_rsa.pub
. These are the files that tell your computer how to communicate with GitHub, BitBucket, or any other Git based service. Typels
to see a directory listing. If those two files don't show up, proceed to the next step. NOTE: Your SSH keys must be namedid_rsa
andid_rsa.pub
in order for Git, GitHub, and BitBucket to recognize them by default. - To create the SSH keys, type
ssh-keygen -t rsa -C "your_email@example.com"
. This will create bothid_rsa
andid_rsa.pub
files. - Now, go and open
id_rsa.pub
in your favorite text editor (you can do this via Windows Explorer or the OSX Finder if you like, typingopen .
will open the folder). - Copy the contents--exactly as it appears, with no extra spaces or lines--of
id_rsa.pub
and paste it into GitHub and/or BitBucket under the Account Settings > SSH Keys. NOTE: I like to give the SSH key a descriptive name, usually with the name of the workstation I'm on along with the date. - Now that you've added your public key to Github and/or BitBucket, try to
git push
again and see if it works. It should!
More help available from GitHub on creating SSH Keys and BitBucket Help.
I got the same error when following the key generation guid for Mac on Github docs: https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key
The problem for me was the entry in .ssh/config which has to be for host
*github.com
and not*.github.com
as the guide says since*.github.com
does not match the ssh domaingit@github.com:your-user...
. So Git didn't even use the key when trying to push to Github.