git 使用ssh密钥
使用命令 git remote -v 查看你当前的 remote url
`root@zengyue:/home/yuanGit# git remote -v`
root@zengyue:/home/yuanGit# git remote -v
origin https://github.com/seventeen71/yuan (fetch) #1
origin https://github.com/seventeen71/yuan (push) #2
origin git@github.com:seventeen71/yuan.git (push) #3
1、#2处的地址都是以https开头的,表示https传输,意味着你每次都要输入讨厌的username、password
作者本人的已经设置好了ssh传输,在#3处:地址是git开头则表示是git协议
提示:完全设置好push模式的话应该是这样
root@zengyue:/home/yuanGit# git remote -v
origin https://github.com/seventeen71/yuan (fetch)
origin git@github.com:seventeen71/yuan.git (push) #4
4处这样当你git push origin master时就不需要输入讨厌的密码了,下面讲如何去设置
在 ~/.ssh目录下查看是否存在如下两个文件:~宿主目录一般为 /home/user(作者是zengyue) /home/zengyue
root@zengyue:~/.ssh# ls
id_rsa id_rsa.pub
如果不存在id_rsa id_rsa.pub 两个文件的话:
2.1.1 使用命令: ssh-keygen 来创建
`root@zengyue:~# ssh-keygen -t rsa -C "your_email@youremail.com"` 邮件地址为你注册github的地址
Creates a new ssh key using the provided email # Generating public/private rsa key pair.
Enter file in which to save the key (/home/zengyue/.ssh/id_rsa):
这儿让你确认密钥目录,直接Enter回车就好:
Enter same passphrase again: [Type passphrase again]
接着让你输入及确认密码,然后就生成了密钥对。
出现下面提示说明OK了
Your public key has been saved in /home/zengyue/.ssh/id_rsa.pub.
The key fingerprint is: # ............ your_email@youremail.com
现在你可以在你的 ~/.ssh 目录看是否有id_rsa id_rsa.pub 两个文件
2.2.1 查看复制本地公钥:cat id_rsa.pub 或者 vim id_rsa.pub 打开直接copy
记得一点都不能省略从 ssh-rsa 开始 ........youre@email.com结束
root@zengyue:~/.ssh# cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCbCLmkVonQAFjAgQVY7vH86NIsgw1kDV3dDYRXdmWoYSZ3gY4OEgzCqm8GWXRr+wNFUsSwhMmUabtEfRGGKlP/z2TBMzXFkcJ18zLAWXtgWWUH73tVfxXg+sdFpKhY0ppDYdU9Amk8ljVsge8+pKHVluk0ReBNtFsbp1w/seyrfUqsjigsnQHWeSPBns3CD7hs++7BXW5Mv4SH+ap30N+2tFBlqSuzitwLJCFed9isSFq2UQ4wiX25rs+eYpSloMY9kClMVVYuXN860EKCyF5V1ThS/TOcMoxDhGclDBoItS/oeTDGwopSTrsm5CFyUJFAd3qDYJ+yVy5fycVYfb6x youre@email.com
2.2.2 登陆你的github帐户。点击你的头像,然后
Settings -> 左栏点击 SSH and GPG keys -> 点击 New SSH key
2.2.3 将复制的公钥粘贴到key文本域,title随便起名,再点击Add key
2.2.4 然后回到linux下确认:命令 ssh -T git@github.com
root@zengyue:~/.ssh# ssh -T git@github.com
Hi xxx! You've successfully authenticated, but GitHub does not # provide shell access. 看到这个你就成功了。
2.2.5 调整remote url
命令 git remote -v 查看,详细见文章开头
root@zengyue:/home/yuanGit# git remote -v
origin https://github.com/seventeen71/yuan (fetch)
origin https://github.com/seventeen71/yuan (push)
如果你的是这样,意思就是现在只有https传输,还需要输入username /password
输入命令:
git remote set-url origin git@github.com:[你的账户]/[你的github仓库].git
如下图进入你的仓库,点击1处,然后出现在2处的就是git协议地址了,
复制它拼接到命令git remote set-url origin 后面
git remote set-url origin git@github.com:someone/repository.git
你还可以去仓库的 .git 目录下修改conf文件
前面我们说过了,每一次提交git都会最后来这个文件找各种信息,下图的 13 到15行就是,去你的github仓库复制过来配置到这儿
11
12 [remote "origin"]
13 url = git@github.com:s--enten--/--an.git
14 fetch = +refs/heads/*:refs/remotes/origin/*
15 pushurl = git@github.com:s--enten--/--an.git.git
16 [branch "master"]
17 remote = origin
18 merge = refs/heads/master
当然你还可以使用git remote --help
git remote set-url [--push] <name> <newurl> [<oldurl>]
git remote set-url --add [--push] <name> <newurl>
git remote set-url --delete [--push] <name> <url>
git remote set-url --push origin <你的github仓库url>
这样去设置解决也是可以哒!
当然如果你遇到如下问题:去我这篇博客找吧!
执行git clone git@github.com:accountName/repository.git命令时不出错,
运行git push时出错,提示如下
Permission denied(publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
git 使用ssh密钥的更多相关文章
- Git 使用SSH密钥操作
git使用ssh密钥 git支持https和git两种传输协议,github分享链接时会有两种协议可选: git协议链接图例 : ↓ https协议链接图例:↓ git使用https协议,每次pull ...
- Git设置ssh密钥
前提条件是,公司的gitlab,运维没有关闭ssh的权限获取,或者叫运维开通那个ssh权限,生成的公钥要给运维那边一个!这样设置是可以成功 一.创建ssh key 1.在客户端查看有没有密钥 cd ~ ...
- git使用ssh密钥和https两种认证方式汇总(转)
在版本库的SSH方式和HTTPS方式是不同的,具体来说就是url信息的不同,但是,实际的认证机制也是不同的.当建立了本机密钥之后,使用ssh方式实际上是不需要再次认证的,而https则每次需要输入密码 ...
- git使用ssh密钥(转)
git使用https协议,每次pull, push都要输入密码,相当的烦.使用git协议,然后使用ssh密钥.这样可以省去每次都输密码. 大概需要三个步骤:一.本地生成密钥对:二.设置github上的 ...
- git使用ssh密钥
1.查看本地是否有密钥对,如果存在就删除cd ~/.sshid_dsa id_dsa.pub 2.重新生成密钥对ssh-keygen -t rsa -C "your_email@yourem ...
- Git生成ssh密钥指定文件
ssh-keygen 使用的时候可以直接使用 -f 参数 指定密钥保存文件,省去后面生成成功后再提示选择保存文件: ssh-keygen -t rsa -C "abc@example.com ...
- git 配置 SSH密钥
1.登录用户 $ git config --global user.name "geekfeier" $ git config --global user.email " ...
- Git生成SSH密钥
git config --global user.name "yangjianliang"配置用户名 git config --global user.email "52 ...
- 报错 Please make sure you have the correct access rights and the repository exists (git 添加ssh密钥 )
1.设置Git的user name和email $ git config --global user.name "wubaiwan" $ git config --global u ...
随机推荐
- JMETER content-type增加
Jmeter—3 http请求—content-type与参数 本文讲三种content-type以及在Jmeter中对应的参数输入方式 第一部分:目前工作中涉及到的content-type 有三种: ...
- react redux学习之路
React 自学 chapter one React新的前端思维方式 React的首要思想是通过组件(Component)来开发应用.所谓组件,简单说,指的是能够完成某个特定功能的独立的.可重用的代码 ...
- postgresql中uuid的使用
本文总共介绍两种方法 : 1.使用create extension命令 create extension "uuid-ossp" 安装扩展成功以后,就可以通过uuid_genera ...
- 浮动、清除浮动、BFC
一. 浮动 1. 浮动的定义 使元素脱离文档流,按照向左或向右的方向移动,直到它的外边缘碰到包含它的框或另一个浮动框为止. 脱离文档流就是在页面中不占位置了. 左浮动右浮动此处就不再赘述了. 2. 看 ...
- 1192:放苹果(dp + 搜索)
这道题先用搜索写的,因为我需要先打表来寻找规律. 因为数据量小所以收搜也会过 #include<iostream> #include<cstdio> #include<c ...
- WIN10刚开机任务管理显示CPU占用100%问题
针对WIN10更新后出现的问题!!! 现象: 电脑刚开机,直接打开任务管理器,CPU占用100%! 但是电脑运行速度正常,按道理这时候应该卡死!(排除病毒) 下载鲁大师查看只是显示CPU 3%!而网上 ...
- Qt5中的lambda表达式和使用lambda来写connect
c11新特性中加入了lambda表达式,所以Qt 也支持 需在.pro文件中加入 CONFIG += c++11 例子: QString program = "C:/Windows/Syst ...
- 一点不懂到小白的linux系统运维经历分享
进入运维行业刚不到二个年头, 刚刚从大白变成小白.都说it行业是青春的饭.但是运维行业可不这么认为.运维工程师便是经验技术的积累,经历的过的沟沟坑坑都会融入你的血液,成为你的智慧. 二年前接触linu ...
- PAT A1106 Lowest Price in Supply Chain (25 分)——树的bfs遍历
A supply chain is a network of retailers(零售商), distributors(经销商), and suppliers(供应商)-- everyone invo ...
- 【Codeforces 332C】Students' Revenge
Codeforces 332 C 我爱对拍,对拍使我快乐... 题意:有\(n\)个议题,学生们会让议会同意\(p\)个,其中主席会执行\(k\)个, 每一个议题执行后主席会掉\(a_i\)的头发,不 ...