问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

GitHub生成SSH密钥,使用SSH进行连接

创作时间:
作者:
@小白创作中心

GitHub生成SSH密钥,使用SSH进行连接

引用
CSDN
1.
https://blog.csdn.net/Oracle475/article/details/139349474

一、生成新的SSH密钥

要使用SSH URL执行git clonegit fetchgit pullgit push等操作,需要在计算机上生成SSH密钥对,并将公钥添加到GitHub账户。

步骤

  1. 打开Git Bash
  2. 创建SSH密钥对

如果系统支持Ed25519算法,可以使用以下命令:

ssh-keygen -t ed25519 -C "your_email@example.com"

如果系统不支持Ed25519算法,可以使用以下命令:

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

其中your_email@example.com需要替换为你的GitHub电子邮件地址。

  1. 设置保存密钥的路径
  2. 设置SSH密钥密码(留空表示不设置密码)
  3. 再次确认SSH密钥密码

二、添加新的SSH密钥

将生成的SSH公钥添加到GitHub账户中。

步骤

  1. 登录GitHub,点击头像 -> Settings
  2. 点击SSH and GPG keys
  3. 点击SSH keys下的New SSH key
  4. 添加SSH密钥:
  • 自定义标题
  • 粘贴公钥
  • 点击Add SSH key

三、测试SSH连接

确保SSH密钥配置正确。

步骤

  1. 打开Git Bash
  2. 输入以下命令:
ssh -T git@github.com

如果连接成功,会看到类似以下的输出:

Hi username! You've successfully authenticated, but GitHub does not provide shell access.

如果提示"permission denied",可以查阅Error: Permission denied (publickey)。

四、SSH密钥密码

为了增加安全性,可以为SSH密钥添加密码。

步骤

  1. 输入以下命令:
ssh-keygen -p -f ~/.ssh/id_ed25519
  1. 如果SSH密钥已有密码,会提示输入该密码,然后才能更改为新密码。
  2. 设置SSH密钥密码(留空表示不设置密码)
  3. 再次输入SSH密钥密码

五、创建新仓库并推送到GitHub

步骤

  1. 在GitHub创建新仓库
  • 进入GitHub
  • 点击+ -> New repository
  • 自定义仓库名,自定义设置,点击Create repository

  1. 在本地初始化Git仓库
  2. 将本地Git仓库与GitHub上的空仓库连接起来

命令说明

  1. 将本地目录初始化为Git仓库
# 切换到本地目录
cd /xxx/xxx/xxx
# 将本地目录初始化为Git仓库
git init
# 跟踪所有文件
git add .
# 提交(使用给定的<msg>作为提交消息)
git commit -m <msg>
  1. 将已存在的Git仓库推送到GitHub
# 使用git remote add命令将远程URL(git@github.com:xxx)和默认远程名称(origin)相关联
git remote add origin git@github.com:xxx
# 重命名分支
git branch -M main
# 推送(首次推送)
git push -u origin main

命令参数说明:

  • git commit:记录仓库的修改
  • -m <msg>:使用给定的作为提交消息
  • git remote:管理一组追踪的仓库
  • add:为中的存储库添加一个名称为的远程
  • git branch:列出、创建或删除分支
  • -M--move --force的快捷方式
  • -m--move,移动/重命名分支及其配置和引用日志
  • --force:结合-m(或--move),允许重命名分支,即使新的分支名称已经存在
  • git push:与相关对象一起更新远程分支引用
  • -u:对于每一个已经更新或成功推送的分支,添加上游(跟踪)引用
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号