I don't post my code to Github because I still couldn't figure out how to switch SSH keys for 2 different git servers smoothly.
If you're using OpenSSH, the IdentityFile
configuration directive selects the SSH key to use.
Add something like this to your SSH config file (~/.ssh/config
):
Host github.com
IdentityFile ~/.ssh/github_rsa
Host gitlab.com
IdentityFile ~/.ssh/gitlab_rsa
This will use the github_rsa
key for repositories hosted at github.com
, and the gitlab_rsa
key for repositories hosted at gitlab.com
. Adjust as needed for your key names and hosts, obviously.
you dont have to switch
git will automatically select one that works
I have the same password protected ssh key for every git site i am on tho. The sites only know the public key so its fine.
I don't know how to switch keys
"just use the same key"
bruh the Stack Overflow energy
have at it!
#~/.gitconfig
[includeIf "hasconfig:remote.*.url:https://gitlab.com/**"]
path = /path/to/gitlab.gitconfig
[includeIf "hasconfig:remote.*.url:https://github.com/**"]
path = /path/to/github.gitconfig
#example gitlab gitconfig from the included path
[user]
name = Your Name
email = 0000000-YourName@users.noreply.gitlab.com
signingkey = 0000999988887777
[commit]
gpgsign = true
if all works well, Git should be able to automatically use the selected key depending on the repo's stated remote server.
Companies spend a lot of time documenting and reviewing and discussing to release one feature in the meantime you release 100. And if it's too much spaghetti, you can rerelease new 100.