初学github过程中遇到的问题

原文:http://my.oschina.net/chape/blog/119983

1 前提:已安装ssh

2 检查SSH公钥

cd ~/.ssh
看看存不存在.ssh,如果存在的话,掠过下一步;不存在的请看下一步

3 生成SSH公钥
$ ssh-keygen -t rsa -C "your_email@youremail.com"

# Creates a new ssh key using the provided email Generating public/private rsa key pair.

Enter file in which to save the key (/home/you/.ssh/id_rsa):
按回车,现在你可以看到,在自己的目录下,有一个.ssh目录,说明成功了

3.1 输入github密码

Enter passphrase (empty for no passphrase): [Type a passphrase]

Enter same passphrase again: [Type passphrase again]
这个时候输入你在github上设置的密码。

3.2 然后在.ssh中可以看到

Your identification has been saved in /home/you/.ssh/id_rsa.

# Your public key has been saved in /home/you/.ssh/id_rsa.pub.

# The key fingerprint is:

# 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@youremail.com

4 添加SSH公钥到github

打开github,找到账户里面添加SSH,把id_rsa.pub内容复制到key里面。

5 测试是否生效

使用下面的命令测试
ssh -T git@github.com
当你看到这些内容放入时候,直接yes
The authenticity of host 'github.com (207.97.227.239)' 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)?
看到这个内容放入时候,说明就成功了。
Hi username!
You've successfully authenticated, but GitHub does not provide shell access

当你在github后台添加了ssh keys之后,如果你在本地 Git clone git://www.somesite.com/test.git 的时候出现了一些问题,不如access denied,那么你要在本地这么测试一下:

ssh -T git@github.com

如果返回是:

Permission denied (publickey).

那么你可能要在本地ssh-add一下,当然在这之前你可以使用 ssh -vT git@github.com 查看一下到底是因为什么原因导致的失败。

ssh-add ~/.ssh/youraccount_rsa

然后会返回如下:

Enter passphrase for /Users/andy/.ssh/youraccount_rsa:
 Identity added: /Users/andy/.ssh/youraccount_rsa (/Users/andy/.ssh/youraccount_rsa)

之后再使用 ssh -T git@github.com

会返回成功:

Hi youraccount! You've successfully authenticated, but GitHub does not provide shell access.

说明你目前本地的ssh已经切换到了youraccount这个账号,

之后便可以进行git clone到本地:

git clone git@github.com:youraccount/yourproject.git

另:如果你有使用github官方的那个小猫app,那么当你git -T git@github.com的时候会使用你在github这个程序中设置的github账号进行登录,而不是ssh的rsa账号登录。


2014.12.12 , 发现可能是因为 known_hosts 文件里的公钥信息导致的

在/root/.ssh/known_hosts 文件里面将原来的公钥信息删除即可

不过还没验证


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值