当前位置:   article > 正文

使用SSH推拉Github代码_如何使用ssh向github仓库推送代码

如何使用ssh向github仓库推送代码

快速使用

  1. ssh-keygen -t rsa -b 4096 -C "your_email@example.com 创建ssh密钥(一直回车,不要指定目录,不要设置密码)
  2. 将生成的 ~/id_ras.pub 中的内容复制到Github对应位置即可

1.SSH简介

SSH(Secure Shell)是一种用于在网络上安全地进行远程登录,文件传输或执行命令的协议。它通过加密通信的方式,保护了用户的身份验证信息和数据传输,防止被中间人攻击或窃听。

2. 如何使用SSH?

2.1 先看看本地是否已经创建过ssh密钥

键入命令: ls -al ~/.ssh ( 查看用户根目录下的 .ssh 文件夹中的内容), 是否包含以下中的一种:

id_rsa.pub
id_ecdsa.pub
id_ed25519.pub
  • 1
  • 2
  • 3

如果存在任意一个,则说明已经创建过密钥,你可以删除重新创建,也可以将文件中的内容( 其实就是公钥 ) 直接复制到Github的SSH Key中, 如果该密钥没有密码,你就可以直接使用。

2.2 自己创建一个SSH的密钥对

键入密令:ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
在这里插入图片描述

命令执行后,在 ~/.ssh/目录下将生成 id_rasid_ras.pub 两个文件, 其中id_ras.pub的内容就是密钥中的公钥

如果你的系统包含了新算法,也可以使用 ssh-keygen -t ed25519 -C "your_email@example.com" , 这将生成 id_ed25519.pub

2.3 将生成的公钥内容放置在Github上

登录你的Github账号, 点击 头像 -> Settings -> SSH and GPG keys -> new SSH key 执行创建
在这里插入图片描述

2.4 测试是否可用

  • 选取你的Github上的任意项目,复制其SSH项目链接
  • 本地开启命令行窗口 ,键入命令 git clone git@github.com:username/ProductName.git, 如果拉取成功,则说明配置完成!
  • 如果在2.2步骤中,创建密钥时设置了密码,则每次拉取项目时,需要输入密钥的密码才可以

3. SSH代理,管理密钥的密码

如果你在创建密钥时设置了密码,又不想每次拉取工程时都进行密码输入,可以将密码交由SSH的代理 ssh-agent来管理。

3.1 ssh-agent如何管理密钥?

第一步
打开命令行窗口,键入 eval "$(ssh-agent -s)"
该命令用于启动 SSH 代理,并将相关的环境变量设置在当前 shell 会话中,以便于后续的密钥管理

第二步
键入 ssh-add -K ~/.ssh/id_rsa
将SSH的私钥添加进SSH代理中 ,首次添加时需要输入 设置的密钥的密码

后续在此命令行窗口中,再去拉取代码时,将不需要再输入密钥的密码了

3.2 如果我重新开启一个命令行窗口, 则需要再次执行上述流程,如果简化?

将下述命令直接添加进入 ~/.zshrc 中,这样每次打开命令行窗口时,这两行命令都将先执行,也就不再需要手动输入了

eval "$(ssh-agent -s)"
ssh-add -K ~/.ssh/id_rsa
  • 1
  • 2

id_rsa 如果和你的命名不同,需要替换为你的密钥文件的名称


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/酷酷是懒虫/article/detail/998932
推荐阅读
相关标签
  

闽ICP备14008679号