使用 git clone git://github.com/lintingying/hkzf-mobile.git 克隆仓库后
git push老报错
网上搜了下,这个问题一般是clone的时候选择的协议导致的。
如果是用的git://github.com/userna/userrepository.git。只有读的权限,不能写入。导致不能push。要用ssh协议才能push
使用ssh大概就是:
每台电脑上会产生出一个ssh key,自己有一个远程账户,可能有很多台电脑
如果想要在任意一台电脑上工作,每台电脑都和远程版本库保持着通讯,就需要将每台电脑的ssh key添加到远程账户
在开始菜单中打开“Git Bash”,然后输入“cd ~/.ssh”,当命令窗口返回“no such file or directory”的时候,表示我们的电脑并没有ssh key,所以需要我们创建ssh key
cd ~/.ssh
创建ssh,这里最后的邮箱要换成自己的邮箱,也就是自己的github账号,然后系统会自己创建ssh key
那两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人
ssh-keygen -t -rsa -C "email@163.com"
登录GitHub,settings - SSH and GPG keys
title的位置填写任意的一个名字,然后在key下的文本框中输入id_rsa.pub文件的内容
这样就可以了,GitHub允许添加多个Key,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了
使用命令查看是否和 GitHub 连接成功
ssh -T git@github.com
再输入yes,,提示 You've successfully authenticated, but GitHub does not provide shell access.
少了一个known_hosts文件,本来密钥文件应该是三个,现在是两个,便报了这样的错误,此时选择yes回车之后,便可,同时生成了缺少了的known_hosts文件
git push还是不行,因为一开始的克隆链接错了,要选择ssh的链接
重新克隆项目,再git push 成功了
ps:另一种方法
登录GitHub,打开项目
直接拖拽上传,别说,还挺方便
pps: Git 远程仓库(Github)