Git-shh配置

本文详述了SSH在Git中的作用,如何生成SSH-KEY,以及单个和多个Git账号的SSH配置步骤。包括全局与局部Git配置,SSH-KEY的添加,SSH-Agent的使用,并提供了常见错误的解决方法。

SSH之于Git的原理

  • Git提交时有Https和SSH两种验证方式,Https的方式需要帐号和密码比较好理解,不过它需要在每次提交时输入帐号和密码,有点麻烦;而SSH的功能可以粗暴的理解为记住帐号密码,不过对这个过程有人会有点疑惑。首先,我们用SSH命令生成一个公钥-私钥对,我们会把公钥添加到Git的服务器,把私钥放在本地。提交文件的时候Git服务器会用公钥和客户端提交私钥做验证(具体细节不究),如果验证通过则提交成功,那么我们在把公钥添加到服务器的时候肯定是需要登录Git服务器的,这个过程其实可以理解为帐号和密码托管给SSH了,所以也是相当于输入了帐号密码,但是由SSH帮你记住了。这么理解是可以,但是SSH的意义不仅仅是这样,关于SSH的更详细内容看客可以自行再了解。

生成SSH-KEY

  • 打开命令行、终端,用命令进入到你要保存SSH-KEY文件的文件夹,我们先用命令测试下终端是否支持SSH:
    ssh -V
  • 如果你的终端支持SSH,那么你可能看到类似如下的版本信息:
    OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017
  • 生成秘钥
    ssh-keygen -t rsa -C "qilim@qq.com"
  • 案例:
[root@localhost ~]# ssh-keygen -t rsa -C "xxxxx@qq.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): /root/myssh/id_rsa_github
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/myssh/id_rsa_github.
Your public key has been saved in /root/myssh/id_rsa_github.pub.
The key fingerprint is:
SHA256:rvD7QF1atcJjMUVjjP+48Hk2fS3MnRLjQV+8vQQS8Wo xxxxx@qq.com
The key's randomart image is:
+---[RSA 2048]----+
|          o*B    |
|         ..*oo   |
|          B.o. . |
|       . = +oo  o|
|      . S  Eooo +|
|     . .  o .+.+.|
|    . . .  o.==o+|
|     o o    +oBo=|
|      +o.    o.o.|
+----[SHA256]-----+

单个Git帐号的配置——全局Git配置

  • sh-keygen命令生成SSH-KEY密钥对文件时需要输入文件名称[默认:id_rsa]

  • SSH-KEY生成了,你会在你指定的文件夹会看到两个文件


                
### 配置 VSCode 使用 Git 2.47.1 和 SSH 为了使 Visual Studio Code (VSCode) 能够使用 Git 版本控制系统并通过 SSH 协议与远程仓库交互,需完成一系列设置。 #### 安装并验证 Git 确保已正确安装 Git,在命令行工具中输入 `git --version` 来确认当前使用的 Git 是否为期望版本[^1]。对于特定版本如 2.47.1 的需求,则可能需要从官方源下载对应版本或利用包管理器指定版本号进行安装。 #### 设置全局身份信息 在本地计算机上配置统一的身份信息以便于每次提交记录一致: ```bash git config --global user.name "Your Name" git config --global user.email "your_email@example.com" ``` 这些指令会保存用户的姓名和电子邮件地址作为默认值应用于所有的 Git 操作中。 #### 创建 SSH 密钥对并与 GitHub 关联 如果尚未创建过 SSH 秘钥,可以通过如下命令生成新的密钥对: ```bash ssh-keygen -t ed25519 -C "your_email@example.com" ``` 这一步骤将引导用户设定文件存储位置以及可选密码保护。之后复制公钥内容到剪贴板准备粘贴至目标平台(例如GitHub)的安全设置里。 #### 将 SSH 密钥添加到 ssh-agent 启动 ssh-agent 并加载私钥: ```bash eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_ed25519 ``` 此过程允许客户端自动处理认证流程而无需每次都手动输入凭证。 #### 在 VSCode 中启用 SSH 支持 打开 VSCode 终端执行上述所有必要的初始化脚本;接着当克隆仓库时选择 URL 方式中的 SSH 形式的链接而非 HTTPS。这样可以确保后续推送/拉取动作均采用安全通道传输数据。 最后记得重启编辑器使得更改生效,并测试能否顺利访问托管在线上的资源库。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值