首页 > 其他分享 >配置SSH连接Git教程 /TortoiseGit SSH配置

配置SSH连接Git教程 /TortoiseGit SSH配置

时间:2023-10-24 14:47:41浏览次数:41  
标签:git TortoiseGit rsa Git 密钥 com ssh SSH

2 检查现有的 ssh 密钥

Windows 打开 GitBash,Linux 下打开终端,输入:

  $ ls -al ~/.ssh

如果你看到以下输出,那么说明你已经有 ssh 密钥(以 .pub 结尾的文件):

  $ ls -al ~/.ssh
  total 26
  drwxr-xr-x 1 197121 0 Mar 31 22:29 ./
  drwxr-xr-x 1 197121 0 Apr 16 23:36 ../
  -rw-r--r-- 1 197121 2610 Mar 31 22:27 id_rsa
  -rw-r--r-- 1 197121 573 Mar 31 22:27 id_rsa.pub
  -rw-r--r-- 1 197121 831 Apr 1 12:08 known_hosts
  -rw-r--r-- 1 197121 92 Mar 31 22:26 known_hosts.old

如果你不想用原来的密钥或者没有密钥的话也不用着急,看下一步如何生成新的 ssh 密钥。

3 创建新的 ssh 密钥

3.1 生成新的 ssh 密钥

在 Windows 的 GitBash 或 Linux 终端输入:

  $ ssh-keygen -t rsa -b 4096 -C "[email protected]"
  # 你可以把引号里的替换为你自己的邮箱,不换的话问题不大

然后终端会让你输入一些东西,可以不用输入直接一路回车,看到:

  Generating public/private rsa key pair.
  Enter file in which to save the key (/root/.ssh/id_rsa):
  Enter passphrase (empty for no passphrase):
  Enter same passphrase again:
  Your identification has been saved in /root/.ssh/id_rsa
  Your public key has been saved in /root/.ssh/id_rsa.pub
  The key fingerprint is:
  SHA256:t3925EJgD4kcUp69dBv/nqkM85n0I5mFRW4BlZwaVeo [email protected]
  The key's randomart image is:
  +---[RSA 4096]----+
  | .=o=|
  | . . B |
  | o + * .|
  | . * =oo+ |
  | So.B +A+ |
  | .o.B.o.o|
  | .o o+o.|
  | .*+B.*|
  | .OoBo|
  +----[SHA256]-----+

代表密钥生成成功。

3.2 将SSH密钥添加到ssh-agent

3.2.1 确保 ssh 正在运行

终端输入:

  $ eval
  $ ssh-agent -s

看到如下输出:

  SSH_AUTH_SOCK=/tmp/ssh-xkZRdf3bu6fW/agent.1075848; export SSH_AUTH_SOCK;
  SSH_AGENT_PID=1075849; export SSH_AGENT_PID;
  echo Agent pid 1075849;

代表 ssh 正常运行。

3.3.3 添加 ssh 到账户

执行以下两条命令:

  $ ssh-agent bash
  $ ssh-add ~/.ssh/id_rsa # 这里如果文件名被改过要写你自己定义的文件名

看到输出:

  Identity added: id_rsa ([email protected])

添加成功!

4 将密钥添加到 github 账户

4.1 复制你的公钥

在终端使用:

  $ cat ~/.ssh/id_rsa.pub

看到:

  ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDJ6c4cXmpyJr/anagkKz4K+RCFYSJlkFvdNY6JBmKeomrQYfChpDZFxjUkj72XfSAhGyJjPcn4pTHHLCHOS2jzstrvE0Cq19p/mbbvwsq5GGqmzsTYqOeqpTIeEKnXlv/PXkh/mXJVOWhui8esIQk4bU1Ss2wIEVMSRI+9n8RgyBcpbiq4m/SDrUy1HJNHO3pyjcf7k6XUjfxeTRWMVtj7IH3yQbgrZQo90VHsVhkmTeyvaCv8tJLi/j+t9E1/kOWPbpTFTmaAe190SuPVwpQjyRH/Z8UWVdCYxgeZ9l9JN3MTyHfRWz6FuDJdoQze94mU1NwEP8AftHNVTsMT2qvbAYK3Mcr6/j1R1vAeq4mbgn1dp79RGW0cKOSx336WuFsfebMV7QLZ1RnW5xF6VgghMd4x9Hk8kmLL6s8I7ZfbjNCgyAhL9d5N01lsz8hdMv1BHzaZp+yk0EXUy8fxFvaSYaUpQuKb8eL6DesBJJ8FH4GVb6+V7J7OsXhG8QiKdDsDbfGDJs/Aq0Ew14cuHlD9y/1A44b+Kt6WwmcISGG85SM+YUcPuay8gEFzNQ/Tzgw4bJznw0RHHVuvtpmjvlBUxXRTSICvrrAJ19/yXoHcZtiPncpDHVnyIy6IVAg23MCeUbrIPIPKQXVHG/5ouRk0YbkFbl6kSq/Yurb35N7tDQ== [email protected]

全给复制下来!

4.2 将公钥添加到 github 账户

然后去 gihub:

  • 右上角下拉面板选择 Settings
  • 左侧选择 SSH and GPG keys
  • 点击 New SSH key
  • 随便起一个 title;
  • 把公钥粘贴到下面。

可能会输入密码,添加完成!

5 测试 ssh 连接

在终端中输入:

  $ ssh -T [email protected]

可能看到如下警告:

  The authenticity of host 'github.com (20.205.243.166)' can't be established.
  ECDSA key fingerprint is SHA256:p2QAMXNIC1TJYWeIOttrVc98/R1BUFWu3/LiyKgUfQM.
  Are you sure you want to continue connecting (yes/no/[fingerprint])?

输入 yes:

  Warning: Permanently added 'github.com,20.205.243.166' (ECDSA) to the list of known hosts.
  Hi xxxxxx You've successfully authenticated, but GitHub does not provide shell access.

如果 xxxxxx 是你的 github 用户名,说明成功。

6 配置 git 使用 ssh 密钥登录

首先将你的仓库 clone 下来到一个位置。然后进入你的仓库。

6.1 检查当前的 remote url

在仓库下输入:

  $ git remote -v

看到输出:

  origin https://xxxxx.git (fetch)
  origin https://xxxxx.git (push)

说明当前使用的还是 https 协议,如果以 git 开头表示 git 协议。

6.2 修改 remote url 为 git 协议

上 github 仓库,点 Code,选择 SSH,复制链接:

image-20220417121125160

在终端输入:

  $ git remote set-url origin [email protected]:xxxxx.git

再检查 git 协议:

  $ git remote -v

出现:

  origin [email protected] (fetch)
  origin [email protected] (push)

成功!

 

 

TortoiseGit SSH配置

1. SSH客户端
首先安装好了TortoiseGit,简单在设置里的网络设置一下SSH客户端
默认在安装目录下的bin文件夹下

 

我在gitee建了一个测试仓库test-tortoise-git-ssh

 


注意URL要写成SSH的

 


2.生成RSA公私钥

 


如果没有密钥,那就点击生成一个,注意鼠标要不停移动产生随机序列

 

然后分别保存公钥(貌似用不上)和私钥文件

 


然后复制SSH公钥序列增加到gitee上面

 

 

3. 可以使用和git相同的密钥
如果本地早存在有git bash的密钥,可以导入直接使用,一般在C:\Users\ycm\.ssh目录下

 

当然也有其他方式,比如TortoiseGit的SSH客户端设置使用git的SSH的客户端(OPENSSH),则会自动使用跟命令行一样的密钥配置,这里不多讨论。

4. 配置TortoiseGit客户端的密钥
4.1 配置 putty上的密钥(个人理解是全局的密钥)

 

 


到这里就已经可以进行推送了


4.2 设置个别仓库密钥
如果不想进行全局putty的密钥设置,也可以单独设置仓库的密钥
右键进入对选中仓库的设置

 

选中之前保存的密钥文件

 


然后进行提交推送,也能成功

文件来源: TortoiseGit配置SSH密钥(或者使用和git相同的密钥)_tortoisegit 的ssh客户端-CSDN博客

配置SSH连接Git教程 - Only(AR) - 博客园 (cnblogs.com)

 

标签:git,TortoiseGit,rsa,Git,密钥,com,ssh,SSH
From: https://www.cnblogs.com/benbentu/p/17784757.html

相关文章

  • gitee与SourceTree的安装使用
    git可视化管理工具SourceTree安装教程:http://wed.xjx100.cn/news/174839.html?action=onClickgitee可视化管理工具SourceTree安装使用教程:https://blog.csdn.net/wan369282913/article/details/131858067这两篇文章结合着看,第一步下载git,第二步下载sourcetree,第三步用git生成公钥......
  • 从零用VitePress搭建博客教程(7) -– 如何用Github Actions自动化部署到Github Pages?
    接上一节:从零用VitePress搭建博客教程(6)-–第三方组件库的使用和VitePress搭建组件库文档 我们搭建完成vitePress后,那么接下来就是如何部署到线上服务器,这里使用GithubPages,免得自己购买服务器,当然你也可以自己购买服务器来部署(比如阿里云服务器)。在部署之前,我们先简单了解......
  • 自己找教学场景相关github目标识别代码研读(10.21~10.28)
    任务:1、解决上次老师问的一些问题?(1)上次老师提到F1得分,再总结一下:混淆矩阵TP:预测正例,实际正例(预测对)FN:预测负例,实际正例(预测错)FP:预测正例,实际负例(预测错)TN:预测负例,实际负例(预测对)精确率=TP/(TP+FP):预测为正例的那些数据里预测正确的数据个数(预测为正例的有多少预测对......
  • 使用Git版本控制查看文件的更改历史
    内容来自DOChttps://q.houxu6.top/?s=使用Git版本控制查看文件的更改历史如何查看单个文件的完整更改历史记录?gitlog--[filename]显示了文件的提交历史,但我如何查看更改的文件内容?对于图形视图,请使用gitk:gitk[filename]若要跟踪文件重命名后的文件:gitk--follo......
  • Ubuntu Hexo Github.io 自建博客站
    1.安装node/npm/hexo在nodejs官网下载Ubuntu的压缩包,解压tar-zcvfnode-v18.18.2-linux-x64.tar.xz设置全局变量,注意是把他从一个路径弄到另一个路径里,下面两个/usr前面都有空格sudoln-sf/root/node-v18.18.2-linux-x64/bin/node/usr/bin/sudoln-sf/root/node......
  • git 图形可视化工具GitHub Desktop 的安装及使用
    直接搜索GitHubDesktop 点进去下载: 下载完根据提示关联自己的github账号克隆一个仓库: 基于某分支新建分支  ......
  • git push使用LFS上传超过100M的文件,亲测有效
     一、问题描述使用gitpush将一个173.86MB的文件推送到GitHub时出现如下报错remote:error:Trace:5c39a1831dc9eced8723579b000596bbbeb91a9069931bbdf49b058aaaf1f64cremote:error:Seehttps://gh.io/lfsformoreinformation.remote:error:Filelinux-zero-......
  • 30分钟带你精通git使用
     非常抱歉,由于篇幅和时间限制,无法在30分钟内提供3000字左右的详细git使用介绍。Git是一个强大的版本控制系统,学习使用它需要一定的时间和实践。以下是一个简要的Git使用指南,帮助您入门并进行基本的操作。1.Git简介Git是一个分布式版本控制系统,用于追踪文件的变化并协作开发......
  • Git学习
    Git学习ref1(简洁)ref2(详细)ref3(撤销)ref4(stash)ref5(rebase)Git-Book(官方)git原理理解原理之后亲手实践对遇到的各种问题才能更快解决。并且了解原理之后再去玩那个学习git的游戏,效果才会更好。LearnGitBranchinggit四个区域远程仓库,本地仓库,暂存区(Index/s......
  • 使用Github Copilot完成代码编写
    上篇文章,我们使用VSCode创建了T.Global解决方案和两个类库工程,接下来我们使用GithubCopilot完成代码编写先说以下业务需求:提供一个公共的本地化组件,支持对数字、货币、时间、日期、度量衡单位、排序的在不同区域下的处理。一、新建一个II18NService接口这里我们使用了以下P......