git常见问题解决方法总结
fatal: Could not read from remote repository
大概意思是:不能从远程存储库读取。
一般我们在使用git push -u origin master命令提交时候,如果我们配置好ssh相关的key的话,那可能会报这个错误。
先使用git remote -v查看我们连接的远程仓库
具体可以查看git文档:https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E8%BF%9C%E7%A8%8B%E4%BB%93%E5%BA%93%E7%9A%84%E4%BD%BF%E7%94%A8
我们先设置远端仓库地址git remote set-url origin “仓库地址”
重点(删除当前key,然后重新生成key)然后输入$ ssh-keygen -t rsa -C “your_email@youremail.com”
这个会在本地C:\Users\你的用户名.ssh生成文件夹,里面有id_rsa和id_rsa.pub两个文件然后复制id_rsa.pub文件里面的内容,如果电脑打不开pub文件,也可以用记事本打开,赋值里面内容即可。
到git的ssh公钥设置那里https://gitee.com/profile/sshkeys添加公钥即可。
我们可以使用命令ssh -T git@gitee.com测试
到这里我们再提交文件git push origin master可能可以,可能也会出现
fatal: ‘origin’ does not appear to be a git repository
这个可能是我们的remote命令或者是提交地址发生了错误。
报这个错误我是测试将一个文件提交到一个已有的仓库,我先使用git remote add pb git@gitee.com:jh1210/todolist.git 添加一个远程仓库地址,pb为地址的简写,然后进行几步git命令提交后出来这个错误。
解决:
先检查remote的内容 git remote -v
发现这个remote命令错误了,那将remove掉添加在远程的origin和pb
然后再来添加一下远程仓库地址(感觉我可能是再简写那里出问题了)
然后再提交就可以了。
error: failed to push some refs to ‘gitee.com:jh1210/todolist.git’
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., ‘git pull …’) before pushing again.
hint: See the ‘Note about fast-forwards’ in ‘git push --help’ for details.
这个跟上面的是连续的,就是说如果新建一个文件夹初始化后打算把这个文件夹里的文件提交到一个已有的仓库中,可能会报这个错。因为我们本地没有readme.md这个文件,所以可以通过如下命令进行代码合并【注:pull=fetch+merge]
git pull --rebase origin master
然后再提交就可以了
参考文章,也谢谢这些文章作者提供的信息:
https://blog.csdn.net/wulianlang6162/article/details/96745260
https://blog.csdn.net/python_neophyte/article/details/83381936
https://www.jianshu.com/p/dc484632c547