# View your current remote servers and their URLs
git remote -v
# Set your `origin` remote server to use the ssh URL instead
# of the HTTPS one
git remote set-url origin https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world.git
# generate a public/private ssh key pair
ssh-keygen -t ed25519 -C "[email protected]"
# Ensure the ssh-agent is running (this starts the `ssh-agent`)
eval "$(ssh-agent -s)"
# Add your private key to it; update the path to your private key below, as
# required, based on what path you interactively selected above when
# generating the key
ssh-add ~/.ssh/id_ed25519
# Verify what keys have been added to the ssh-agent by listing
# (`-l`) currently-added keys.
# A. If you see "Could not open a connection to your authentication agent.",
# it means the `ssh-agent` has not been started yet, so you must start it
# with `eval "$(ssh-agent -s)"`.
# B. If you see "The agent has no identities.", it means the ssh-agent is
# running but you haven't added any ssh keys to it, so run `ssh-add
# path/to/private_key` to add a key to the agent.
ssh-add -l
Now log into github in a web browser and click on your profile image –> Settings –> SSH and GPG keys (on left) –> New SSH key –> copy and paste the contents of your .pub key file (ex: run cat ~/.ssh/id_ed25519.pub on your Ubuntu machine to read the public key–adjust that path as necessary if you used a different file name) into GitHub here –> click "Add SSH key".
Now, whenever you type git push it automatically works, using your ssh key.
2
Answers
You can provide the username once as part of the https git remote address.
First run
git remote -vv
to get the full, current remote URL.Then to change your existing remote, you can do a command like:
where the new part is
yourname@
(substitute your github user name) and the rest of the URL should be the same as shown ingit remote -vv
How to use ssh keys to easily push to / pull from GitHub
You need to:
Details
Configure your remote to use the ssh version of the GitHub repo address instead of the http version. Ex:
For this repo of mine: https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world, use this ssh URL: [email protected]:ElectricRCAircraftGuy/eRCaGuy_hello_world.git instead of this HTTPS one: https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world.git:
Generate a public/private ssh key pair, and add the public key to your GitHub account manually via your web browser.
See my full notes on ssh stuff here: https://github.com/ElectricRCAircraftGuy/eRCaGuy_dotfiles/tree/master/home/.ssh
Now log into github in a web browser and click on your profile image –> Settings –> SSH and GPG keys (on left) –> New SSH key –> copy and paste the contents of your .pub key file (ex: run
cat ~/.ssh/id_ed25519.pub
on your Ubuntu machine to read the public key–adjust that path as necessary if you used a different file name) into GitHub here –> click "Add SSH key".Now, whenever you type
git push
it automatically works, using your ssh key.References