初学github过程中遇到的问题

    xiaoxiao2021-03-25  124

    原文: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 文件里面将原来的公钥信息删除即可

    不过还没验证

    转载请注明原文地址: https://ju.6miu.com/read-12150.html

    最新回复(0)