使用sshkey连接github等服务器

平常使用git时因为用了https的方式,所以经常要输入密码,其实我们是可以通过这个公钥连接github git.oschina.net等服务器,这样可以省去了我们输入用户名密码这么一个步骤了。

1.生成公钥--- ssh-keygen

无论是什么系统要使用git,那么都需要安装git工具,这个是去官网下载,安装完成后都会有了这么一个命令--- ssh-keygen,这个命令就是用来生成公钥的,生成公钥有什么好处在前面就已经说了。

这个命令使用是很简单的

?  ~  ssh-keygen

直接运行,一路确定(按回车键)就可以了,这样就生成了了公钥,需要注意的是在执行的过程中会提示你文件保存的路径,在那一个步骤你要留意这个保存的路径。

完成后,文件保存的路径,在linux中一般是 "/home/subying/.ssh/",windows下一般是"c:\用户\subying\.ssh\" 这里的subying是我登录的用户名,你会在里面看到一个名为‘id_rsa.pub‘的文件。最正确就是前面说的在生成过程中留意那个路径,如果没有留意怎么办?呵呵,再生成一次...

2.上传到服务器(网站github\git.oschina.net等)

生成公钥后,就是要上传到服务器了,我们常用的git服务应该在是github git.oschina.net这样的网站,那么这些网站的设置都是类似的。

首先是找到个人设置里面,在左侧找到ssh key(ssh 公钥)这样的菜单,点击进去进行设置,下面给出github git.oschina.net的连接

https://github.com/settings/ssh (github)

http://git.oschina.net/profile/sshkeys  (git.oschina.net)

设置的时候一般是设置标题和内容,标题可以自己取一个,那么内容就是刚才生成的那个id_rsa.pub文件的内容,可以用编辑器、记事本这样的工具打开,复制。

步骤如下截图:

3.验证是否成功

验证的方式就是使用命令 ‘ssh -T [email protected]网站url‘,那么要判断我们上面设置的github git.oschina.net,可以分别执行 ‘ssh -T [email protected]‘  ‘ssh -T [email protected]‘ ,效果如下

?  nodejs-download-website-Image git:(master) ssh -T [email protected]
The authenticity of host ‘github.com (192.30.252.130)‘ can‘t be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘github.com,192.30.252.130‘ (RSA) to the list of known hosts.
Hi subying! You‘ve successfully authenticated, but GitHub does not provide shell access.
?  nodejs-download-website-Image git:(master) ssh -T [email protected]
The authenticity of host ‘git.oschina.net (124.202.141.153)‘ can‘t be established.
ECDSA key fingerprint is 27:e5:d3:f7:2a:9e:eb:6c:93:cd:1f:c1:47:a3:54:b1.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘git.oschina.net,124.202.141.153‘ (ECDSA) to the list of known hosts.
Welcome to [email protected], subying!

成功后都会看到一些欢迎的信息,比如github的‘Hi subying! You‘ve successfully authenticated‘,git.oschina.net的‘Welcome to [email protected], subying!‘  这里的subying是我的账号名。

4.将https改成ssh

做完上面的步骤后,并不是说就可以clone都不需要输入用户名和密码了,记住的是这个是ssh的公钥,所以clone的时候要用ssh的url而不是https的url,否则你用了https的url还是需要输入用户名和密码的。

那么如果之前已经用了https了,现在要怎么修改呢?用命令‘git remote set-url origin 项目的sshurl‘,比如我的就是这样‘git remote set-url origin [email protected]:subying/nodejs-download-website-Image.git‘,或者是直接修改了项目里面.git文件中的config文件,把https的url改成ssh的url就可以了。

使用了ssh公钥后就方面了很多,希望给像我一样的朋友一些帮助。

本文同步到我的个人博客 http://www.subying.com/archives/119.html

时间: 2024-10-28 13:38:27

使用sshkey连接github等服务器的相关文章

Git详细教程之创建本地仓库和连接Github仓库

首先要知道不只有代码,任何类型的文件都可以进行版本控制,版本控制很重要的一个特性就是你可以随时修改,比如git会记录你的任何操作,如果你想要回退到任何一个历史操作,你可以通过git轻松达到. 本地仓库的创建通常有两种方式: 第一种是自己手动创建: 在自己电脑硬盘中创建新的文件夹,打开然后用gitbash打开此文件夹,运行**git init**然后查看自己的文件夹会看见.git的隐藏文件夹.这是git配置相关的文件夹,不要随意修改它.之后就可以在自己新建的这个文件夹中添加项目包含的文件了. 第二

Sublime Text 中使用Git插件连接GitHub

sublime Text的另一个强大之处在于它提供了非常丰富的插件,可以帮助程序员来适合大多数语言的开发.这些插件通过它自己的Package Controll(包管理)组件来安装,非常方便.一般常用的插件包括: Zen Coding -- 一种快速编写HTML/CSS代码的方法JQuery package -- jQuery的代码包,jQuery的自动不全功能给jQuery程序员带来极大的方便.JS Format -- JS的格式化工具JsMinifier -- JS的压缩工具,基于Google

<转载>在Sublime Text 2/3 中使用Git插件连接GitHub

原文地址:<http://www.cnblogs.com/BobGo/p/5998339.html> 工欲善其事,必先利其器." 这是古人的教诲,也是一个高效率的工程师需要遵循的法则之一.从大学开始写java使用了JBuilder,Eclipse,后来写PHP用了Zend,写JavaScript的时候用了Aptana.这些都是非常优秀的IDE,在各自的语言和应用开发环境中给程序员们提供了极大的便利.而作为一个合格的程序员,也应该懂得选择合适的IDE针对不同的应用不同的语言进行开发.

转:sublime上使用git连接github

"工欲善其事,必先利其器." 这是古人的教诲,也是一个高效率的工程师需要遵循的法则之一.从大学开始写Java使用了JBuilder,Eclipse,后来写PHP用了Zend,写JavaScript的时候用了Aptana.这些都是非常优秀的IDE,在各自的语言和应用开发环境中给程序员们提供了极大的便利.而作为一个合格的程序员,也应该懂得选择合适的IDE针对不同的应用不同的语言进行开发. 我一直以来都是使用Eclipse,对它也产生了极大的依赖,基本开发别的语言的时候都是找到相应的插件(E

Eclipse使用EGit插件连接Github的设置(一):Push篇

今天我们来介绍一下在Eclipse下连接Github的设置. 如果你使用的是从Google下载的带ADT的Eclipse的话,是自带EGit插件,不需要安装了. 1.EGit插件的下载和安装 首先打开Eclipse,然后点击Help>Install New Software. 接着点Add增加一个地址http://download.eclipse.org/egit/updates,OK. 钩上Eclipse Git Team Provider,然后一路Next. 2.配置Git 在Eclipse

Linux下通过ssh连接github

github每次pull/push代码时要求推送代码的用户是合法的,所以每次推送时候都要输入账号密码用以验证用户是否为合法用户,而ssh是一种安全的传输模式,可以代替用户的这一"输入账号密码"的行为来验证用户. github共支持2种操作方式 https 可以随意克隆github上的项目,而不管是谁的:在pull/push的时候是需要验证用户名和密码的 ssh 克隆者必须是拥者或管理员,且需要先添加 SSH key ,否则无法克隆.在pull/push的时候不再是验证用户名和密码,而是

使用Xshell连接远程CentOS服务器

使用Xshell连接远程CentOS服务器只需简单几步: (1)确定你的远程服务器的登录名和密码: (2)新建一个连接: (3)填写主机信息: (4)填写登陆信息(远程服务器的登录名和登陆密码): 最终连接上远程CentOS服务器.

自己整理连接github步骤

连接github:1. 生成秘钥    a). 创建SSH key       ssh-keygen -t rsa -C “[email protected]”    b).        xp:C:\Documents and Settings\Administrator-> .ssh       win7: C:\Users\所使用的用户-> .ssh 里面两个文件:id_rsa id_rsa.pub -> 取出里面东西(不要拿编辑器打开) c). 把这个秘钥填写到github 点击

window下配置SSH连接GitHub、GitHub配置ssh key(转载自 http://jingyan.baidu.com/article/a65957f4e91ccf24e77f9b11.html)

此经验分两部分: 第一部分介绍:在windows下通过msysGit(Git for windows.Git Bash)配置SSH Keys连接GitHub. 第二部分介绍:在GitHub上创建仓库,在本地创建项目,然后将本地项目通过SSH提交到GitHub仓库中. 工具/原料 GitHub msysGit(git for windows.Git Bash) msysGit配置SSH访问GitHub 1 检查本机是否有ssh key设置 $ cd ~/.ssh 或cd .ssh 如果没有则提示: