Sergey Ovchinnik Sergey Ovchinnik - 14 days ago 5
Git Question

Difference between git@github.com:... and https://github.com/...?

I've recently attempted building a project which had various dependencies declared as Github links. The links were a mixture of links to public Github repositories and private Github Enterprise repositories of my company.

Some of the links were in format

https://github.com/project/repo.git


And some were in format

git@github.com:project/repo.git


What exactly is the difference between such formats and which format is intended to be used for what purpose?

Answer

git can operate on a variety of different protocols

http(s) like https://github.com/project/repo.git

It uses the port 443 (or 80 for http), it allows both read and write access, password for auth (like on github it allows anonymous read access but asks a paasword for write).and Firewall friendly (it does not require any infra configuration).

ssh like git@github.com:project/repo.git

It uses the port 22, it allows both read and write access, requires SSH Keys for auth so if you give git your public ssh key, your ssh protocol will use your private key for authentication with git, so you will not need to provide a username password.

with SSH you will not be asked to provide your password each time you use the git push command as the ssh protocol will use you private key for authentication with the repository.

Comments