📜  git 使用 ssh 而不是 https - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:15:19.137000             🧑  作者: Mango

Git使用SSH而不是HTTPS

当你与Git仓库进行交互时,你有两个选项:通过SSH进行连接或者通过HTTPS进行连接。这里我们将谈一谈如何使用SSH来连接和进行版本控制。

SSH是什么?

SSH是一种网络协议,用于在不安全的网络上安全地运行网络服务。在Git中,SSH是一个用于连接本地机器和远程Git仓库的协议。当你与Git使用SSH连接时,它会建立一个SSH会话并进行加密,以保证数据的安全性。

使用SSH连接到远程Git仓库

要使用SSH连接到远程Git仓库,你需要生成一个SSH密钥。你可以使用以下命令在本地机器上生成一对密钥:

$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

运行完毕后,你可以在~/.ssh文件夹中找到生成的公钥和私钥文件。

接下来,将公钥文件id_rsa.pub的内容添加到Git仓库中。在GitHub上,你可以将该公钥添加到你的账户的SSH密钥列表中。在GitLab上,则需要将公钥添加到你的项目的SSH密钥列表中。这样,你就可以使用SSH连接到远程Git仓库了。

修改Git配置

在你连接远程Git仓库时,你需要告诉Git使用SSH。你可以使用以下命令让Git使用SSH:

$ git config --global url."git@github.com:".insteadOf "https://github.com/"

这将强制Git使用SSH连接到所有GitHub仓库。如果你使用的是GitLab,则将上述命令中的github.com替换为GitLab的域名即可。

优势

使用SSH连接而不是HTTP连接的一个主要优势是安全性。HTTP连接是明文传输的,因此别人可以看到你传输的数据。使用SSH连接,则会进行加密以保证数据的安全性。

此外,SSH连接速度更快,因为SSH连接使用的是压缩和加密技术。这意味着数据可以更快地在本地和远程仓库之间传输。

总结

Git使用SSH连接更加安全且速度更快。要使用SSH连接到远程Git仓库,你需要生成SSH密钥,并将公钥添加到Git仓库中。然后,你需要修改Git配置以让Git使用SSH。