Git连接Coding.net远程仓库时无法push

树莓派上安装了Git软件,在Coding.net上创建了版本库,然后clone下来:

pi@raspberrypi:~ $ git clone git@git.coding.net:username/projectname.git

成功clone下来,然后完成一次提交再push回去的时候却报错了,总结原因,写下我的折腾记录。。。

首先要生成ssh密钥,用命令$ ssh-keygen -t rsa -C "username@host.com"生成密钥,默认保存在/home/user/.ssh 目录下,包括id_rsaid_rsa.pub两个文件,其中第一个是私钥,、第二个是公钥。
打开公钥,将所有内容复制,然后去coding.net的我的账户->SSH公钥,将复制的公钥内容粘贴进去,名称和有效日期按照自己的需求定义,最后点击添加。

然后再次push,还是报错,内容大致为:

Permission denied (publickey).
fatal: Could not read from remote repository.

于是继续百度……发现需要把专用密钥添加到ssh-agent的高速缓存中。该命令位置在/usr/bin/ssh-add。来自: http://man.linuxde.net/ssh-add
于是,执行上述命令,发现又报错了:

$ ssh-add ~/.ssh/rsa
Could not open a connection to your authentication agent.

继续搜索解决方案,最终按照以下方法解决了这个问题:
先执行

eval `ssh-agent` (是~键上面的那个`)

再执行 $ ssh-add ~/.ssh/rsa成功,最后 $ ssh-add -l 就可以看到新加的rsa了。
完成如上步骤,再次尝试$ git push,发现终于可以推送成功了~~~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,721评论 9 163
  • 本文作者陈云峰,转载请注明。 这篇文章记录个人常用的一些命令,和记不住的一些命令,转载了并不断更新。 Git官网 ...
    陳云峰阅读 2,846评论 0 24
  • 本文为 Git教程的学习笔记,教程源自廖雪峰的博客。这是一个由浅入深,学完后能立刻上手的Git教程。另,附上另一本...
    七弦桐语阅读 6,274评论 5 47
  • 5月16日,是非常特别的日子。 然而,我们大部份人都已不再提起。 如果在前面加上1966年-1976年,你应该知道...
    大鸟8wo阅读 513评论 0 3
  • 今天的体育课上,有两个小女孩儿跑来向我报告说安安会转呼啦圈啦!老师你快来看!真的是啊,安安扭动着小腰已经能转得稳稳...
    兔娘阅读 372评论 1 1