zoukankan      html  css  js  c++  java
  • SSH方式 git pull

    使用SSH关联远程仓库,git pull的时候遇到报错:

    以往使用的都是HTTPS,没有过这样的问题

    网上查了问题,如果使用SSH,要先在本地生成ssh key。

    cd ~/.ssh进入ssh目录

    ls 查看目录下的文件

    可以看到只有一个known_hosts文件

    下面进入正题。

    第一步,输入命令:ssh-keygen -t rsa -C "xxxxxx@xxx.com"  (此处邮箱地址改为你自己的邮箱地址)

    中途会提示让你输入密码,不需要管,一路回车即可(一共好像敲三次回车),然后会生成你的ssh key (如果重新生成的话会覆盖之前的ssh key)

    第二步,输入命令:ssh -v git@github.com

    最后两句会出现:

    No more authentication methods to try.  

    Permission denied (publickey).

    第三步,输入命令:ssh-agent -s

    然后会提示类似的信息:

    SSH_AUTH_SOCK=/tmp/ssh-nju2ZPGNXhZo/agent.5372; export SSH_AUTH_SOCK;
    SSH_AGENT_PID=5240; export SSH_AGENT_PID;
    echo Agent pid 5240;

    第四步,输入命令:ssh-add ~/.ssh/id_rsa

    这时候应该会提示:

    Identity added: ...(这里是一些ssh key文件路径的信息)

    (注意)如果出现错误提示:

    Could not open a connection to your authentication agent.

    请执行命令:eval `ssh-agent -s`后继续执行命令 ssh-add ~/.ssh/id_rsa,这时候一般没问题啦

    第五步,输入命令:vi id_rsa.pub 复制里面的内容。

    复制完以后先按 i 键切换为插入模式,

    然后按 esc 键,输入 :wq (是冒号wq) 退出编辑。 回到原来的命令界面

    进入你的github账号,在settings下,选择Deploy keys,Add deploy key,把刚刚复制的key粘贴进来

    Title可以随便取,记得把Allow write access勾上,这样就可以写入到仓库。

    下图已经生成成功

    最后一步,验证Key

    命令窗口输入命令:ssh -T git@github.com

    提示:Hi xxx! You've successfully authenticated, but GitHub does not provide shell  access.

    这时候问题就解决啦,再次使用git pull origin master 就可以把远程仓库的文件pull到本地了。记得要切回原来的仓库目录

  • 相关阅读:
    使用SandCastle生成代码注释文档
    如何修改默认的ModelState错误提示:字段{0}必须是一个数字
    2011总结 致:过去的30年
    CentOS下安装、配置Nginx,配合IIS做负载均衡
    灵活应用js调试技巧解决样式问题
    扩展IList对象,实现深拷贝扩展方法
    IE8对JS数组,采用属性遍历的解析差异
    如何开始Github
    Response.Clear 还是 Response.ClearHeaders
    URLRoutingModule如何处理静态文件?
  • 原文地址:https://www.cnblogs.com/zxtceq/p/14037175.html
Copyright © 2011-2022 走看看