📜  使用 ssh-rsa 连接到 git repo - Shell-Bash (1)

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

通过 ssh-rsa 连接到 git repository

在使用 Git 进行代码管理时,我们通常使用 SSH 连接到 Git 服务器。而在 SSH 连接中,我们可以使用 ssh-rsa 协议进行连接。本篇文章将介绍如何使用 ssh-rsa 协议连接到 Git 服务器,并进行代码管理。

步骤一:生成密钥

首先,我们需要生成一对密钥(公钥和私钥),用于进行身份认证和加密通信。使用以下命令生成一对密钥:

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

其中 -t 参数表示生成密钥的类型,这里我们选择 RSA 密钥;-b 参数表示密钥的长度,一般选择 2048 或者 4096;-C 参数用于添加注释,一般填写你的邮箱地址。

执行以上命令后,会生成一对密钥(默认存储在 ~/.ssh 目录下),其中 id_rsa 是私钥,id_rsa.pub 是公钥。

步骤二:将公钥添加到 Git 服务器

将生成的公钥添加到 Git 远程服务器,这样我们才能使用私钥进行身份认证。以 GitHub 为例,可以按照以下步骤添加公钥:

  1. 打开 GitHub 网站,进入个人设置 → SSH 和 GPG 密钥页面。
  2. 点击 New SSH key 按钮,填写 Title 和 Key,其中 Key 部分需要将公钥内容复制粘贴进去。
  3. 点击 Add SSH key 按钮即可添加公钥。

添加公钥后,我们可以测试连接是否成功。使用以下命令测试:

ssh -T git@github.com

如果显示 Hi username! You've successfully authenticated, but GitHub does not provide shell access,则表示连接成功。

步骤三:clone 代码仓库

现在,我们可以使用 ssh-rsa 协议 clone 代码仓库了。例如,clone GitHub 上的一个仓库:

git clone git@github.com:username/repo.git

以上命令中的 git@github.com:username/repo.git 就是 GitHub 上的一个仓库地址,其中 username 是你的用户名,repo 是仓库名。

如果你已经 clone 过某个仓库,并想将其改为使用 ssh-rsa 协议连接,可以使用以下命令:

git remote set-url origin git@github.com:username/repo.git

以上命令中的 git@github.com:username/repo.git 同样是 GitHub 上的仓库地址。

总结

通过 ssh-rsa 协议连接到 Git 服务器,可以更加安全和高效地进行代码管理。需要注意的是,生成密钥和添加公钥这两个步骤需要在所有使用 ssh-rsa 协议连接的机器上都进行,才能保证身份认证和通信的成功。