Scale up as you grow — whether you're running one virtual machine or ten thousand.

From GPU-powered inference and Kubernetes to managed databases and storage, get everything you need to build, scale, and deploy intelligent applications.

This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!
It says this:
The authenticity of host ‘github.com (13.234.210.38)’ can’t be established.
ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added ‘github.com’ (ED25519) to the list of known hosts.
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
Thanks for the article - its a great writeup to address this common issue. For this to work for me, at least using https github repo paths, I had to add
git branch -M main
after adding my commit message.
This comment has been deleted
I ran into the following issue when working through this, which required me to set up my SSH keys between my local workstation and the github account. Since I tend to use specific SSH keys for different purposes, there is a little more work to do; I’ll show both standard (using default SSH keys) and extended (using specific SSH keys) approaches here.
NB: Do this before you attempt to Push to Github or if you get the following error:
% git push -v -u -f origin main
Pushing to github.com:github_username/github_repository.git
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
This uses the default SSH keys for the user account in question. The drawback (in my opinion and scenario) is that my default SSH keys typically have passphrases which I don’t want to include for my CI/CD pipelines.
% ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/bigdev/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): <<Enter a passphrase if required>>
Enter same passphrase again: <<Re-Enter a passphrase if required>>
Your identification has been saved in /Users/bigdev/.ssh/id_rsa
Your public key has been saved in /Users/bigdev/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:Rx349489384djasdfJD+ywf3M3q3R52wJ3qJ2KjILN0OZ0Q90 bigdev@tintin.local
The key's randomart image is:
+---[RSA 3072]----+
| ..o o+ .o |
| *C+o +... o|
| ..@.. + |
| .........|
| . 0D8s o |
| . + o. . ooB|
| **=--.. =O|
| . = =+oBB .+|
| ..oo .. 0.|
+----[SHA256]-----+
This uses a specific SSH key dedicated to this function; may be reused for others if needed. The advatage (in my opinion and scenario) is that it separates the keys used for standard activities and these dedicated SSH keys typically can exclude passphrases making my CI/CD smoother (IMHO).
% ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/bigdev/.ssh/id_rsa): /Users/bigdev/.ssh/id_rsa_github # Note we have specified a specific filename here!
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/bigdev/.ssh/id_rsa_github
Your public key has been saved in /Users/bigdev/.ssh/id_rsa_github.pub
The key fingerprint is:
SHA256:Rx349489384djasdfJD+ywf3M3q3R52wJ3qJ2KjILN0OZ0Q90 bigdev@tintin.local
The key's randomart image is:
+---[RSA 3072]----+
| ..o o+ .o |
| *C+o +... o|
| ..@.. + |
| .........|
| . 0D8s o |
| . + o. . ooB|
| **=--.. =O|
| . = =+oBB .+|
| ..oo .. 0.|
+----[SHA256]-----+
Host github.com
Hostname github.com
User git
IdentityFile /Users/bigdev/.ssh/id_rsa_github
IdentitiesOnly yes
#Final step
Copy the content of the .pub file created and add this to the GitHub settings.
That’s it, you’re all set!.
This otherwise good tutorial leaves out security steps. Here, the github repo is used as a remote repository. An alternative is to treat it as an https site and use a PAT (Personal Access Token).
To set up a PAT, log into github and go to settings --> developer settings --> personal access tokens (classic). For permissions, I chose to click all in the repo category and all in the user category. You should probably check a good tutorial on PATs if you want to know more about the other permissions. With these two, I was able to push my project to the new github repo.
In the CLI instructions, replace
git remote add origin git@github.com:sammy/my-new-project.git
with
git remote add origin https://github.com/sammy/my-new-project.git