There are many links for this in the Internet so I am not going to discover the fire but I struggled a bit so….
The official links from github were ok and other people did a very good job too documenting the process.
I had already a key that I wanted to use. So adding it to the repo was ok.
Testing it was my challenge. I was missing two things. My key wasn’t following the standard file name so it wasn’t used by my ssh-agent and then, i wasn’t using the “git” user when testing…. I was using my github username.
So add the key and check it is there.
$ ssh-add ~/.ssh/id_ed25519-gh $ ssh-add -l -E md5 256 MD5:xx:xx:xx:xx:xx:67:xx:6a:73:xx:8a:xx:7f:78:xx:xx user@gh (ED25519)
Check you can ssh to github.
$ ssh -T email@example.com Hi xxxx! You've successfully authenticated, but GitHub does not provide shell access. $
Ok, all good now. But this is not a new repo, how I move from the “old” user/pass to the “new” ssh-key process?
You can clone the repo again using ssh:
Or you can change the git config locally in the “url” bit.
/ceos-testing/.git master$ cat config [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] #url = https://github.com/thomarite/ceos-testing.git url = firstname.lastname@example.org:thomarite/ceos-testing.git fetch = +refs/heads/:refs/remotes/origin/ [branch "master"] remote = origin merge = refs/heads/master $
After that you can “git push” using your ssh-key.