git使用ssh协议,生成公钥和私钥,并指定私钥
查看版本
$ ssh -V
OpenSSH_7.6p1, OpenSSL 1.0.2n 7 Dec 2017
http://superuser.com/questions/232373/how-to-tell-git-which-private-key-to-use
In ~/.ssh/config
, add:
host github.com
HostName github.com
IdentityFile ~/.ssh/id_rsa_github
User git
Now you can do git clone git@github.com:username/repo.git
.
NOTE: Verify that the permissions on IdentityFile are 400.SSH will reject, in a not clearly explicit manner, SSH keys that are too readable. It will just look like a credential rejection. The solution, in this case, is:
chmod 400 ~/.ssh/id_rsa_github
https://confluence.atlassian.com/bitbucket/set-up-ssh-for-git-728138079.html
Step 1. Ensure you have an SSH client installed
SSH should be included with the version of Git you installed. To make sure, do the following to verify your installation:
From the Git Bash window, enter the following command to verify that SSH client is available:
$ ssh -v
OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
usage: ssh [-1246AaCfgkMNnqsTtVvXxY] [-b bind_address] [-c cipher_spec]
[-D [bind_address:]port] [-e escape_char] [-F configfile]
[-i identity_file] [-L [bind_address:]port:host:hostport]
[-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
[-R [bind_address:]port:host:hostport] [-S ctl_path]
[-w local_tun[:remote_tun]] [user@]hostname [command]If you have
ssh
installed, the terminal returns version information.If you don't have
ssh
installed, install it now with your package manager.List the contents of your
~/.ssh
directory.
If you have not used SSH on Git Bash yet, you might see something like this:$ ls -a ~/.ssh
ls: /c/Users/emmap1/.ssh: No such file or directoryIf you have a default identity already, you'll see two
id_*
files:$ ls -a ~/.ssh
. .. id_rsa id_rsa.pub known_hostsIn this case, the default identity uses RSA encryption (
id_rsa.pub
). If you want to use an existing default identity for your Bitbucket account, skip the next section and go to create a config file.
Step 2. Set up your default identity
By default, the system adds keys for all identities to the /Users/<yourname>/.ssh
directory. The following procedure creates a default identity.
- Open a terminal in your local system.
Enter
ssh-keygen
at the command line.
The command prompts you for a file to save the key in:$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/emmap1/.ssh/id_rsa):Press enter to accept the default key and path,
/c/Users/<yourname>/.ssh/id_rsa
, or you can create a key with another name.
To create a key with a name other than the default, specify the full path to the key. For example, to create a key calledmy-new-ssh-key
, you would enter a path like this at the prompt:$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Documents and Settings/emmap1/.ssh/id_rsa): /c/Users/emmap1/My Documents/keys/my-new-ssh-keyEnter and renter a passphrase when prompted.
Unless you need a key for a process such as script, you should always provide a passphrase.
The command creates your default identity with its public and private keys. The whole interaction looks similar to the following:$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/emmap1/.ssh/id_rsa):
Created directory '/c/Users/emmap1/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/emmap1/.ssh/id_rsa.
Your public key has been saved in /c/Users/emmap1/.ssh/id_rsa.pub.
The key fingerprint is: e7:94:d1:a3:02:ee:38:6e:a4:5e:26:a3:a9:f4:95:d4 emmap1@EMMA-PCList the contents of
~/.ssh
to view the key files.
You should see something like the following:$ ls ~/.ssh
id_rsa id_rsa.pubThe command created two files, one for the public key (for example
id_rsa.pub
) and one for the private key (for example,id_rsa
).
Step 3. Create a SSH config file
Using your favorite text editor, create a new file (at
~/.ssh/config
) or edit the file if it already exists.Add an entry to the configuration file using the following format:
1Host bitbucket.org
2IdentityFile ~/.ssh/<privatekeyfile>
The second line is indented. That indentation (a single space) is important, so make sure you include it. The second line is the location of your private key file. If you are following along with these instructions, enter
id_rsa
for<
privatekeyfile>
.When you are done editing, your configuration looks similar to the following:
1Host bitbucket.org
2IdentityFile ~/.ssh/id_rsa
- Save and close the file.
- Restart the GitBash terminal.
git使用ssh协议,生成公钥和私钥,并指定私钥的更多相关文章
- github git clone ssh协议 clone超慢解决方案,提高Github Clone速度
即使进行了fq吧但是git clone ssh协议就是慢 2kb/s你能忍,坚决不能忍. github git clone ssh协议 clone超慢解决方案 151.101.72.249 globa ...
- 使用idea操作git(ssh协议)
问题 我们发现,使用IDEA上的git功能,当使用ssh协议出现了可以commit但无法push和pull的问题,经过测试发现原因是Could not read from remsitory.直接翻译 ...
- Git和SSH协议
SSH(安全外壳协议)为Secure Shell的缩写,由IETF的网络工作小组(Network Working Group)所制定:SSH为建立在应用层和传输层基础上的安全协议.SSH是目前较可靠, ...
- Git for Windows之使用SSH协议开通公钥免密登陆功能
1.删除Https的通信方式,建立SSH的通信方式 (1).查看当前的通信方式 当前是使用Https的方式与远程仓库进行通信 (2).删除HTTPS的通信方式 ok,HTTPS通信方式已删除 (3). ...
- Git 中 SSH key 生成步骤
由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSH key,在此之前,必须要生成SSH key. 第1步:创建SSH Key.在windows下 ...
- git生成公钥public key并添加SSH key。git乌龟gerrit下推送git【server sent :publickey】
一.key 码云链接:http://git.mydoc.io/?t=180845#text_180845 博客链接: 方式一:https://blog.csdn.net/xb12369/article ...
- Git : SSH 协议服务器
SSH 协议用于为 Git 提供远程读写操作,是远程写操作的标准服务. SSH协议语法格式 对于拥有 shell 登录权限的用户账号,可以用下面的语法访问 Git 版本库: 语法 1 : ssh:// ...
- 15.Git四种协议-本地协议(local)、HTTP协议、SSH协议、Git协议
1.本地协议(loacl) 最基本的协议,其远程仓库其实就是硬盘内部的一个目录(例如D:\\project).常见于团队内的人对一个共享的文件系统(例如NFS)具有访问权限,或者多人共用一台电脑的情况 ...
- centos7.5下生成公钥,实现ssh免密钥登陆
配置SSH无密码登录需要4步准备工作生成公钥和私钥导入公钥到认证文件,更改权限测试1. 准备工作确认本机sshd的配置文件(需要root权限) # vi /etc/ssh/sshd_config 1找 ...
随机推荐
- Segment Tree with Lazy 分类: ACM TYPE 2014-08-29 11:28 134人阅读 评论(0) 收藏
#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; stru ...
- 3-Highcharts 3D图之3D柱状图分组叠堆3D图
<!DOCTYPE> <html lang='en'> <head> <title>3-Highcharts 3D图之3D柱状图分组叠堆3D图</ ...
- CSS3实现的渐变按钮,在IE7、IE6下的滤镜使用。
.ui-button { BORDER-LEFT-WIDTH:; ; COLOR: #fff; PADDING-BOTTOM: 0px; TEXT-ALIGN: center; PADDING-T ...
- var 和 dynamic在实际项目中的应用
先回顾一下这两个关键词的用法. var是个语法糖,是在用var声明变量的那一刻就确定了其变量的类型. 因为需要在声明的时候就确定其类型,所以要求在用var声明隐式局部变量的时候必须初始化该变量. 编译 ...
- Ambient Occlusion
一般在光照模型中,ambient light的计算方法为:A = l * m,其中l表示表面接收到的来自光源的ambient light的总量,而m表示表面接收到ambient light后,反射和吸 ...
- pthread_barrier_init,pthread_barrier_wait简介
pthread_barrier 系列函数在<pthread.h>中定义,用于多线程的同步,它包含三个函数: --pthread_barrier_init() --pthread_barri ...
- 2015年4月 非常干货之Python资源大全
[非常干货之Python资源大全]Python是一门美妙的语言,简单易用,容易提升.它是一门主流语言,却没有其它专业语言的弊病,从游戏,ML,GUI到科学和数学有着巨量的函数库. 直击现场 <H ...
- Eclipse环境下配置spket中ExtJS提示
使用eclipse编写extjs时,一定会用到spket这个插件,spket可以单独当作ide使用,也可以当作eclipse插件使用,我这里是当作eclipse的插件使用的,下面来一步步图解说明如何配 ...
- 由CAST()函数在.NET1.1和.NET4.0下处理机制不同所引发的BUG
.NET 1.1版本下使用日期强制转换函数,比如:"select cast(ActionDate as char(7)) as ActionDate from ST_BookAction ...
- GetWindowText和GetDlgItemText的区别
二者使用方法相同,入口点不一样. 举例: CString str; /* if (GetDlgItem(IDC_Number1)->GetWindowText(str),str==" ...