开始设置之前的准备:建立项目文件夹,初始化git仓库(右键 git  init),右键打开 git bash ,git pull “仓库地址”, 把网站上的仓库代码拉取下来。

TortoiseGit使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥。

也就是说使用 ssh-keygen  -t rsa  -C "username@email.com"产生的密钥,TortoiseGit中不能用。

而基于github的开发必须要用到rsa密钥,因此需要用到TortoiseGit的putty key generator工具,来生成既适用于github的rsa密钥也适用于TortoiseGit的ppk密钥。

以下是生成ppk密钥,并且在TortoiseGit中设置的步骤:

1、开始程序菜单中,打开TortoiseGit,点击 PuTTYgen,在打开的窗口中点击Generate按钮,会出现绿色进度条,生成过程中可以多晃晃鼠标增加随机性。

               

2、生成之后复制生成的全部内容,窗口先留着不关闭。

3、在 代码管理网站,如github、码云。这里拿码云为例。布局都差不多。

点击右上角,修改资料——点击左侧的 ssh公钥——填写右侧的添加公钥——标题自拟,把第二步复制的代码粘贴到下面的公钥那里——点击确定。

4、返回到第二步的窗口,点击 Save private key  按钮保存为适用于TortoiseGit的私钥,扩展名为.ppk。

5、运行TortoiseGit开始菜单中的Pageant程序,程序启动后将自动停靠在任务栏中,双击该图标,弹出key管理列表。

             

6、在弹出的key管理列表中,点击add key,将第4步中保存的私钥(.ppk)文件加进来,关闭对话框即可。

7、回到项目目录下,右键——TortoiseGit——Settings——点击Remote,将第4步中保存的私钥(.ppk)文件加进来。

注意URL后面填的是 git仓库的 ssh地址。

8、完成后,右键可以直接pull和push操作了。

补充:

如果一开始是用git命令( ssh-keygen   -t   rsa   -C   [邮箱] ),生成的公钥和密钥( 比如 id_rsa 和 id_rsa.pub )

首先,把生成的公钥粘贴到 git远程仓库管理中心。接下来用ssh的方式连接远程仓库。

有两种操作方式:

1.用 git命令

  可以直接用命令“git  pull【仓库的ssh地址】【分支名称】”   这样拉取和推送

2.用 TortoiseGit 方式

  需要将私钥转成 .ppk格式

  1)运行PuTTYgen,在Conversions菜单中点击Import key,选择一开始生成的私钥文件,比如 id_rsa文件。

  2)点击Save private key 按钮,将其保存为.ppk文件。

  3)打开Pageant,点击Add Key,选择前一步所保存的.ppk文件所在的位置即可。

  PuTTYGen 和 Pageant 都在开始菜单中的TortoiseGit文件夹下,可以找到。

使用TortoiseGit,设置ssh方式连接git仓库。的更多相关文章

  1. mac系统下用ssh方式连接git仓库

    1.应用程序-终端,键入命令  ssh-keygen -t rsa -C "xxxxx@xxxxx.com"  ,后面是你的邮箱地址.一直回车,生成密钥. 2.键入  open ~ ...

  2. 如何配置 SSH 密钥连接 Git 仓库

    SSH 是 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定:是建立在应用层基础上的安全协议. SSH 是目前较可靠,专为远程登录会话和其 ...

  3. TortoiseGit 设置ssh方式

    TortoiseGit使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥. 也就是说使用 ssh-keygen  -t rsa  -C "576953565@qq.com& ...

  4. SSH方式连接Git服务器需要注意的地方

    如何安装Git?这个我这里就不再多说了,想要了解的可以自行百度,以下文字是基于本地Git安装OK,且Git服务器可用的情况下,我的Git是GitLab 接下来开始操作 1:首先在本地生成私钥和公钥,这 ...

  5. Jenkins连接Git仓库时候报错Permission denied, please try again.

    一.连接GIT仓库报错 Failed to connect to repository : Command : stdout: stderr: Permission denied, please tr ...

  6. Centos6架设GIT服务,windows客户端使用TortoiseGit加载KEYGEN连接GIT服务器

    前几天得空,想起前一阵学了GIT还没好好实践,就在虚拟机中安装测试了一下,并简单记录了CENTOS6中GIT安装,ssh-keygen生成,客户端使用TortoiseGit加载KEYGEN连接GIT服 ...

  7. [原创]SSH密钥访问Git仓库配置

    SSH密钥并非为了解决拉取git仓库代码时,需要频繁输入密码的问题. SSH是一种比较安全的协议,可以用来免去远程登录Linux等服务器时需要输入密码的繁琐过程. 命令: ssh user@serve ...

  8. Linux设置SSH隧道连接

    因为安全考虑,服务器防火墙对某些端口进行了限制,原先通过客户端工具可以连接的端口,现在不能连接了,需要通过设置SSH隧道才可以,记录如下.

  9. 使用SSH方式实现Git远程连接GitHub/gitlab

    参照: https://blog.csdn.net/wuli_smbug/article/details/81480162

随机推荐

  1. 聊聊GO-REDIS的一些高级用法

    1. 前言 说到Golang的Redis库,用到最多的恐怕是redigo 和 go-redis.其中 redigo 不支持对集群的访问.本文想聊聊go-redis 2个高级用法 2. 开启对Clust ...

  2. 【Python基础】lpthw - Exercise 47 自动化测试

    一.自动化测试的目的 利用自动化的测试代码取代手动测试,使得程序中的一些初级bug可以被自动检出,而无需人工进行重复繁琐的测试工作. 二.编写测试用例 利用上一节编写的skeleton,这次在proj ...

  3. 调用百度api的原理流程

    1.为了实现酒店地址的定位 2.使用可视化便捷的百度地图API生成器:设置公司的地址和地图等级 3.设置地图的滚轮.缩放功能 4.获取代码,拷贝到html页面中 5.申请秘钥,在html中引用地图AP ...

  4. python高级 之(一) --- 函数类型

    函数 模块 模块: 一个py文件就是一个模块, 每个模块之间是可以相互访问的 访问之前需要进行导入 分类: 1.系统提供的模块 math random 2.自己自定义的,自己封装的常用功能的的py文件 ...

  5. 解决pip安装第三方包编码错误:UnicodeDecodeError: 'ascii' codec can't decode byte....

    .../python27/Lib/mimetypes.py 在 import之后添加下列内容 if sys.getdefaultencoding() != 'gbk': reload(sys) sys ...

  6. "a++" 与 "++a" 的区别-演示

    两种表示方法经常容易混淆, 在这里将利用演示程序来揭示两者之间的区别, 演示代码如下 int main() { ; cout << "a=1 " << &q ...

  7. 解决ubuntu命令行中文乱码

    解决方法: 1.安装zhcon 登入用户后,输入 1 sudo apt-get install zhcon 2.启动zhcon 输入 1 zhcon --utf8  PS:zhcon支持中文输入法,按 ...

  8. MySQL日期时间函数大全

    1.获取当前时间+日期 函数now() mysql> select now(); +---------------------+ | now() | +--------------------- ...

  9. Coins —— POJ-1742

    Time limit 3000 ms Memory limit 30000 kB Description People in Silverland use coins.They have coins ...

  10. 网络信息统计netstat|ss|ip

    1:netstate[弃用] netstat的作用: 需求 原命令 新命令 1:网络连接 netstat -a ss 2:路由表 netstat -r ip route 3:统计接口 netstat ...