先放个学习资料:https://www.liaoxuefeng.com/wiki/896043488029600
我先在windows下建的自己的git仓库,linux的话和windows差不多,或者说更加简单。
在学到添加远程仓库的这部分时出现了一些问题
经检查后主要是这部分产生的问题。
对于教程中的下面这行命令,我写错了,导致后面出现了问题
$ git remote add origin git@github.com:michaelliao/learngit.git
我把michaelliao改成了自己的用户名,把learngit改成了自己本地的仓库名,就是这里错了。这里的git@github.com:michaelliao/learngit.git实际上应该写的是自己在GitHub上建立的远程仓库的名字,而不是本地的仓库名。
然后在运行
$ git push -u origin master
这行时,先跳出了一个这个
The authenticity of host 'github.com (xx.xx.xx.xx)' can't be established.
RSA key fingerprint is xx.xx.xx.xx.xx.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
这个东西不是我弄错了,而是因为我是第一次用这台电脑连接远程仓库,生成秘钥的文件夹里缺少一个known_hosts文件,这个文件是把GitHub的Key添加到本机的一个信任列表里。
解决很简单,只要输入yes继续就可以了,git会自动在生成秘钥的文件夹里添加known_hosts文件。
yes之后给我报错
ERROR: Repository not found.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
这个报错的原因我上面已经说过了:输错了要连接的git远程仓库的地址。
这时重新输入正确地址也会报错
fatal: remote origin already exists.
因为上面这种连接命令只能连接一个url。那怎么办?网上很容易就找到了方法:重新改变远程连接的url,把之前错误的改成对的就好啦。使用下面的命令改变url
$ git remote set-url origin git@github.com:xxx/xxx.git //仓库地址
然后再把本地的master分支push过去就没问题啦。