git如何设置ssh密钥
git设置ssh密钥
目前git支持https和git两种传输协议,github分享链接时会有两种协议可选:
1、Clone with SSH
2、Clone with HTTPS
git在使用https协议的时候,每次pull、push都会提示要输入密码,使用git协议,然后使用ssh,这样可以免去在执行pull和push的时候次次都要输入密码的麻烦。
使用git协议大致可以分为是三个步骤
1、生成密钥对
2、设置远程仓库上的公钥
3、把git的remote url修改为git协议
第一步:生成密钥对
绝大多数的git服务器都会选择SSH公钥来进行授权。系统中的每一个用户都必须提供一个公钥用于授权,没有的话就必须要生成一个。生成公钥的过程在所有的操作系统上的方式都大致一样。首先确定自己本地是否已经有了公钥。
SSH公钥默认存储在账户主目录下的.ssh 目录中。
$ cd ~/.ssh
$ ls
查看文件夹下的文件是否包含id_rsa和id_rsa.push(或者是id_das和id_das.pub一类成对的文件),其中有.pub后缀的文件就是公钥,另一个对应的就是私钥。
如果没有这些文件,甚至连.ssh目录都没有,可以用ssh-keygen来创建。
$ ssh-keygen -t rsa -C "邮箱地址"
然后提示你输入密码,这个密码你可以随便输一个你记得住的密码。
当提示你:
Your public key has been saved in /home/you/.ssh/id_rsa.pub.
The key fingerprint is: # 03:0e:f2:3b:ca:85:d6:17:a9:7d:f0:68:9d:f0:a2:db "邮箱地址"
这个时候,你的本地密钥已经生成了。
第二步:设置远程仓库上的公钥
1、在终端上查看你的生成的公钥或者可以直接跳转到~/.ssh/id_rsa.pub去查看你的公钥
命令行可以用: $ cat ~/.ssh/id_rsa.pub
回车之后看到上面这样的一些乱码,说明你找到了。
2、在网站上登陆你的git账号,点击头像,再选择Setting选项,进入之后,选择SSH密钥,在密钥的大框里面把刚才查询到的公钥粘贴进去,接下来点击 添加密钥就可以了。
然后可以使用 $ssh -T git所在网址 查看这个密钥是不是成功正常运行。
第三步:修改git的remote url
这一步在有些集成了git的开发环境中会自动给帮你修改。
首先使用$ git remote -v 来查看当前的remote url
如果是https:打头的地址是https协议,git打头的则是git协议。
在github上找到项目对应的git打头的clone地址。复制之后,在命令行敲 $ git remote ser-url origin git协议地址。到这里就修改完成了。
最新文章
- C++标准库实现WAV文件读写
- 单台机器配置redis多实例
- 【ORACLE】MD5加密
- Freemarker list标签,list数据判断使用
- 06_Java多线程、线程间通信
- Unity小知识
- [51NOD1095] Anigram单词(map)
- ab做压力测试
- C# 新特性 dynamic的使用及扩展
- 代理的使用 一(helloworld级别)
- android 6.0特性翻译 --渣渣
- Android开发手记(7) 按钮类控件的使用
- SVN服务器搭建(2)
- Android 经验: 5555 端口会被 adb 误认为 emulator
- 随心测试_数据库_003 <;数据库存储结构>;
- 基于Redis的分布式锁到底安全吗
- JSP中out.print()、out.println()以及out.write()的区别
- 升级 Centos 6.5/6.7 的 php 版本
- using强制对象清理资源 【转】
- Samsung_tiny4412(驱动笔记07)----spinlock,semaphore,atomic,mutex,completion,interrupt
热门文章
- SignalR学习笔记(三)Self-Host
- Android中颜色透明度对应16进制值
- Android:谈一谈安卓应用中的Toast情节(基础)
- [Python Web]部署完网站需要做的基本后续工作
- python操作符笔记
- [Leetcode]237. Delete Node in a Linked List -David_Lin
- LeetCode专题-Python实现之第21题:Merge Two Sorted Lists
- SpringBoot整合系列-整合Swagger2
- .Net Core 编码规范
- Python全栈开发之---mysql数据库