git配置ssh秘钥(公钥以及私钥)
桌面版git, 本文以github为例,gitlab等其它托管平台一样操作
当我们将代码托管到远程平台(GitHub、gitlab等)时, 我们需要在本地使用git进行push/pull代码时,需要将公钥加入到托管平台,如果需要免密操作,还需要在本地存储私钥,那么如何操作呢
首先我们找到git的安装目录,双击bash.exe
然后弹出命令框,输入命令(邮箱最好换成你的GitHub邮箱,据说不换也可以,未尝试过) 4096 一会会用到
ssh-keygen -t rsa -C your@example.com -b 4096
这个过程会让你输入密码什么的,可以输入也可以不输入直接回车,输入的话就是将来进行 pull/push 代码时需要输入的密码
如果出现类似下图的情况就是生成密钥对(公钥+私钥)成功了,
下面进入到用户目录(一般在C:/用户/你的用户名/),找到.ssh文件夹,里面已经有两个文件了,如图所示
这里说明一下, id_rsa.pub是公钥,id_rsa是私钥(这个私钥并不能使用,因为正确的私钥后缀应该是.ppk)
好了,这时你可以进行如下操作
1、将id_rsa.pub文件用编辑器打开,完整的全选复制所有内容,不要有任何改变,空格都不行。
2、打开GitHub,登录你本人的账号,进入setting -> SSH and GPG keys -> New SSH key, 具体如下:
3、进入到下一个页面,粘贴你的key, 并随意起一个容易记住的title, 然后点击 Add ssh key 按钮,完成。
然后会跳转到ssh key 列表页面,如下:
此时如果没有提示 “Key is invalid...........”,并且生成了你刚添加的ssh key, 就可以在本地进行代码的更新了。下面就可以不用看了 ,可以关闭本网页了
如果比较悲催的提示你Key is invalid
或者
你设置了pull/push密码(生成秘钥时、ssh-keygen -t rsa -C your@example.com -b 4096输入的密码)但又想免密使用git进行更新代码时
此时我们可以使用私钥,也就是生成秘钥对时的两个文件之一 :id_rsa,我们将id_rsa复制一份,命名为id_rsa.ppk作为私钥。 id_rsa里面的内容是私钥,但文件格式不是私钥,只保留备份即可,如下。
除此之外我们需要一个非常小巧的秘钥生成工具puttygen,下载链接 https://www.puttygen.com/download-putty 找到 puttygen.exe 选择32或64位版本,下载安装
打开软件如下:
首先我们确保秘钥类型是RSA, 字节数是4096,也就是前边说的
下面是选择私钥:你可以选择Generate,生成一个秘钥对(公钥和私钥)然后保存为.ppk文件,
也可以使用ssh自己生成的那个私钥,也就是我们刚刚复制命名为 id_rsa.ppk 的私钥文件(这里我使用复制的id_rsa.ppk)
准备好私钥后,点击load,载入私钥, 选择你私钥(我选择我们的id_rsa.ppk)
然后会生成新的公钥,此时你的id_rsa.pub文件已经更新,我们用编辑器/记事本打开它,(今天2019-11-25发现不再生成新的公钥了,此时点击Save private key 将新的私钥保存为.ppk文件。配置git的remote时使用此私钥即可,其他步骤不变)
记住一定是完整的全选复制,然后按照前面说的步骤,添加到github上,
此时大功告成,可以使用git进行免密更新代码了。
如果该项目的代码仍然没有权限pull请联系该项目的管理者,在该项目的setting 中的 Collaborators选项 邀请你为项目成员,你必须同意后才能更新代码。
see you !
git配置ssh秘钥(公钥以及私钥)的更多相关文章
- git配置ssh秘钥(公钥以及私钥)linux
本文默认已经安装git,并有github或者gitlab账号 git在linux下安装参考:https://www.cnblogs.com/lz0925/p/10791147.html 在Linux中 ...
- TortoiseGit与GIt生成ssh秘钥添加到github账号的简单方法!简单使用
今天升级了自己电脑上的git与TortoiseGit,全部换成了最新版,后来不知道怎么的git的秘钥还能使用,可以直接拉取或者提交ssh地址克隆的代码,可是小乌龟客户端就悲剧了 公司的项目有key.p ...
- HTTPS 之共享秘钥 公钥 及 私钥
HTTPS 之共享秘钥 公钥 及 私钥一 共享秘钥1.1 概念共享秘钥和我们生活中同一把锁的钥匙概念类似,对同一把锁来说,加锁时使用什么钥匙,解锁也必须使用同样的钥匙. 1.2 共享秘钥在HTTP传输 ...
- github 生成配置ssh 秘钥方法详解
如果安装github成功后,当从本地提交文件到github的时候,提交不成功,报错,可能问题就是你还没有生成ssh秘钥 1.当你提交文件到github,不成功,出现如下的情况,就代表着github上面 ...
- Xshell配置SSH秘钥登录
秘钥生成 生成公钥 工具 -> 新建用户秘钥生成向导 -> 下一步 -> 点击下一步,输入密码: 点击下一步 点击保存为文件,完成. 生成私钥 工具 -> 用户秘钥管理者 选中 ...
- 配置ssh秘钥登陆
环境2台linux服务器:node1 192.168.X.234 node2 192.168.X.242 演示用node1无密码登陆node ...
- git生成SSH秘钥
1.进入git bash , 输入 cd ~/.ssh/ ,没有的话,自己创建 mkdir ~/.ssh , 然后进入该文件夹完成生成秘钥步骤 2.配置全局的name和email,这里是的你githu ...
- Git简单配置ssh秘钥
执行以下命令: git config --global user.name "demo" git config --global user.email "demo@dem ...
- 在windows上使用ssh秘钥连接git服务器
git部署在centos7上 安装好git后,新建一个用户test(注意要加入git用户组)配置ssh秘钥登录,我的另一篇博客有写配置步骤 重点的地方是在windows系统上使用秘钥登录git服务器 ...
随机推荐
- ToastCustomUtil【简单的Toast封装类】【自定义Toast的显示风格】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 ToastUtil + ToastCustom结合.主要解决低版本机型上系统toast显示不好看的问题. 效果图 代码分析 在Toa ...
- 90后的青春,定格在被淡忘的QQ空间里
QQ空间,这个曾经陪我们从童年到少年再到成年,从2G时代再到如今的4G末,占据了我们太多的青春回忆,如今好友空间动态更新的不在像从前那样频繁.依稀记得当年的好友买卖,抢车位再或者情侣空间,现在想想那时 ...
- WebApiClient的JsonPatch局部更新
1. 文章目的 随着WebApiClient的不断完善,越来越多开发者选择WebApiClient替换原生的HttpClient,本文将介绍使用WebApiClient来完成JsonPatch提交的新 ...
- 图像检索(3):BoW实现
在上一篇文章中图像检索(2):均值聚类-构建BoF中,简略的介绍了基于sift特征点的BoW模型的构建,以及基于轻量级开源库vlfeat的一个简单实现. 本文重新梳理了一下BoW模型,并给出不同的实现 ...
- MySQL优化小建议
背景 "那啥,你过来一下!" "怎么了?我代码都单元测试了的,没出问题啊!"我一脸懵逼跑到运维大佬旁边. "你看看!你看看!多少条报警,赶快优化一下! ...
- cocos creator主程入门教程(十一)—— 有限状态机和行为树
五邑隐侠,本名关健昌,10年游戏生涯,现隐居五邑.本系列文章以TypeScript为介绍语言. 本篇介绍有限状态机和行为树.有限状态机用于有限的状态下的AI,由于同时只能处于一个状态,多个状态需要多个 ...
- Spring Boot Security OAuth2 实现支持JWT令牌的授权服务器
概要 之前的两篇文章,讲述了Spring Security 结合 OAuth2 .JWT 的使用,这一节要求对 OAuth2.JWT 有了解,若不清楚,先移步到下面两篇提前了解下. Spring Bo ...
- Python二级-----------程序冲刺4
1. 根据输入正整数 n,作为财务数据,输出一个宽度为 20 字符,n 右对齐显示,带千位分隔符的效果,使用减号字符“-”填充.如果输入正整数超过 20 位,则按照真实长度输出.提示代码如下: ...
- 20190329-盒尺寸、boder-
目录 1.盒尺寸四家庭 width:宽度 height:高度 margin:外边距 padding:内边距 盒模型: 2.border边框 border简写:border-position(top | ...
- Java-获取年月日对应的天干地支
一.概述 本次是以java语言开发为例,计算出年月日对应的天干地支. 二.代码 public class MyDate { /** * 对于年月日的天干地支 */ private int year_g ...