You get Unable to negotiate with ip port 22: no matching host key type found error when you try to authenticate on Github with SSH using ssh-rsa algorithm. ssh-rsa is insecure as it uses SHA-1 protocol. Even it is deprecated by openssh and they declared it in their press release.
Solution with Code Example
The best solution is to not use ssh-rsa as it is insecure and cryptographically not safe. There are better alternatives available like rsa-sha2-256 which uses SHA-256 protocol and rsa-sha2-512 which uses SHA-512 protocol.
But if you need to use ssh-rsa only (like Azure DevOps only support ssh-rsa) for connecting to the Github, GitLab, BitBucket etc. then you can add exception to the ssh config file –
Open .ssh/config file and add this –
Host ssh.dev.azure.com
HostName ssh.dev.azure.com
User git
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes
PubkeyAcceptedAlgorithms +ssh-rsa
HostkeyAlgorithms +ssh-rsa
Another solution is to use HTTPS instead of ssh.