使用TortoiseGit,设置ssh方式连接git仓库。
开始设置之前的准备:建立项目文件夹,初始化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仓库。的更多相关文章
- mac系统下用ssh方式连接git仓库
1.应用程序-终端,键入命令 ssh-keygen -t rsa -C "xxxxx@xxxxx.com" ,后面是你的邮箱地址.一直回车,生成密钥. 2.键入 open ~ ...
- 如何配置 SSH 密钥连接 Git 仓库
SSH 是 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定:是建立在应用层基础上的安全协议. SSH 是目前较可靠,专为远程登录会话和其 ...
- TortoiseGit 设置ssh方式
TortoiseGit使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥. 也就是说使用 ssh-keygen -t rsa -C "576953565@qq.com& ...
- SSH方式连接Git服务器需要注意的地方
如何安装Git?这个我这里就不再多说了,想要了解的可以自行百度,以下文字是基于本地Git安装OK,且Git服务器可用的情况下,我的Git是GitLab 接下来开始操作 1:首先在本地生成私钥和公钥,这 ...
- Jenkins连接Git仓库时候报错Permission denied, please try again.
一.连接GIT仓库报错 Failed to connect to repository : Command : stdout: stderr: Permission denied, please tr ...
- Centos6架设GIT服务,windows客户端使用TortoiseGit加载KEYGEN连接GIT服务器
前几天得空,想起前一阵学了GIT还没好好实践,就在虚拟机中安装测试了一下,并简单记录了CENTOS6中GIT安装,ssh-keygen生成,客户端使用TortoiseGit加载KEYGEN连接GIT服 ...
- [原创]SSH密钥访问Git仓库配置
SSH密钥并非为了解决拉取git仓库代码时,需要频繁输入密码的问题. SSH是一种比较安全的协议,可以用来免去远程登录Linux等服务器时需要输入密码的繁琐过程. 命令: ssh user@serve ...
- Linux设置SSH隧道连接
因为安全考虑,服务器防火墙对某些端口进行了限制,原先通过客户端工具可以连接的端口,现在不能连接了,需要通过设置SSH隧道才可以,记录如下.
- 使用SSH方式实现Git远程连接GitHub/gitlab
参照: https://blog.csdn.net/wuli_smbug/article/details/81480162
随机推荐
- Ubuntu腾讯云主机安装分布式memcache服务器,C#中连接云主机进行存储的示例
Ubuntu腾讯云主机安装分布式memcache服务器,C#中连接云主机进行存储的示例(github代码:https://github.com/qq719862911/MemcacheTestDemo ...
- DESC加密解密算法
using System; using System.Text; using System.Windows.Forms; using System.Security.Cryptography; usi ...
- sql(存储过程,事务,索引,游标,触发器)
1.SqlServer中like '%_%'来匹配下划线: --在sql server的like中下划线类似于通配符%,所以无法使用like '%_%'来匹配下划线 select * from cla ...
- 【Deep Learning Nanodegree Foundation笔记】第 10 课:Sentiment Analysis with Andrew Trask
In this lesson, Andrew Trask, the author of Grokking Deep Learning, will walk you through using neur ...
- Linux C\C++基础——数组形参的使用
1.数组形参 ]) void fun(int a[]) void fun(int *a) ],int n) void fun(char*p[],int n) void fun(char**p,int ...
- Python pip升级及升级失败解决方案
本教程用于Python pip升级及失败解决方案 首先查看脚本 pip show pip 我已经升级到了最新的版本 安装其他模块过程中出现下面提示,便说明你需要升级pip You are using ...
- 将对象以json格式写入到文件中
将 list 对象以json格式写入到文件中 try { ObjectMapper mapper = new ObjectMapper(); String value = mapper.writeVa ...
- [转帖]开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别
开源许可证GPL.BSD.MIT.Mozilla.Apache和LGPL的区别 https://www.geek-workshop.com/thread-1860-1-1.html liamj ...
- 注入(Injection)
注入(Injection)是: Java EE提供了注入机制,使您的对象能够获取对资源和其他依赖项的引用,而无需直接实例化它们.通过使用将字段标记为注入点的注释之一来装饰字段或方法,可以在类中声明所需 ...
- java-selenium浏览器常用操作命令
一.浏览器操作命令 启动火狐浏览器(49版本以下) System.setProperty("webdriver.firefox.bin","D:\\Firefox\\fi ...