大致问题:之前用http克隆代码时,之前提交到自己的fork仓(仓)时都是稳稳进行,突然有一次git push时死活提不上去,百度了很多,原因也不是自己遇到的情况,终于七拼八凑解决了这个问题。
大致解决方案:设置ssh,用ssh来克隆代码然后再进行提交。
详细解决方案:
一、查看一下原来连的地址(小编这里之前连的是http的地址)
二、 解除原先连接
三、连接SSH地址的远程库
四、
提交到远程仓库(这里成功了就可以不用往下看了,没成功且遇到与小编一样的可以往下操作,绝对良心啊啊啊啊)
报错:fatal: Could not read from remote repository.
解决办法:删除当前key,然后重新生成key
1、 ssh-keygen -t ed25519 -C “git绑定的邮箱” 生成公钥
2、会在本地C:\Users\你的用户名.ssh生成文件夹,里面有id_ed25519和id_ed25519.pub两个文件然后复制id_ed25519.pub文件里面的内容(这俩名字可能会不大一样,反正里面的内容都是差不多的),然后到自己的git账号上进行配置即可。
3、git remote add origin ssh地址 设置远程地址(小编这是上面已经执行了一边,所以显示我已经有这个了)
4、git remote -v 查看地址
5、git push origin master 推送代码到远程仓库(下面这样就是成功了的)
为什么Git用ssh连不上GitHub,push就卡住,而用HTTPS可以连接。上一次用Git的ssh连接时候还可以,这段时间再重新使用Git却发现ssh方式push到Git,每次一push就卡住,找遍了百度Google,用了各种方法也没有解决,困扰了我两天,后来在Stackoverflow看到了貌似ssh要IPV6啥的,所以最后终于找到了问题,原来是我们校园网不支持IPV6!!!(ipv6测试地址)
先来测试一下我们的目前校园网是否支持IPV6
不支持是吧,那我们来试一下用Git来连接一下远程仓库会怎么样:
这里都没有问题,然后我们push一下:
!!!就是这个样子,试过了卸载再重装,GIthub试了Gitee也试了,都是这样子,有时候还会出现这个:
好了,现在我们连接我们的手机热点(手机热点不是连接校园网的,支持IPV6的),测试一下IPV6是否支持:
OK,支持IPV6,我们先把原来的ssh连接删除
没有任何返回说明删除成功,这时候再remote add一下:
接下来我们来push一下:
是不是成功了,有的会出现一个让你确认是否连接的对话框,你只要输入yes就OK了,我们再来看一下我们Github里面是否有这个文件:
OK,大功告成!
到此这篇关于git push时卡住(长时间不报错也不自动退出)的文章就介绍到这了,更多相关git push卡住内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!