好的,我有一个麻烦,我一个星期以来无法修复。 我使用git(在github上)来存储我的项目。 最近我添加了一些新的文件没有问题,但是,当我使用“git推”我有一个超时错误。
我使用Ubuntu 12.04,使用ssh(默认)和https。
所以,我决定重新制作depo(git clone)。 在此之后,我修改一个现有的文件,提交并推动它…成功!
所以,我添加其他(在新的副本),提交并推送它们。 而问题又来了:无法推动这里是控制台输出:
time git push Counting objects: 13, done. Delta compression using up to 2 threads. Compressing objects: 100% (11/11), done. Writing objects: 100% (11/11), 16.61 KiB, done. Total 11 (delta 2), reused 0 (delta 0) ^C real 7m59.383s user 0m0.008s sys 0m0.004s
我真的不明白我在这里做错了什么。 我在其他depo,同样的问题,但我的合作者没有任何麻烦。
我删除混帐,并重新安装它没有任何改变。
如果你有任何想法来解决这个问题。
git remote -v origin git@github.com:Krozark/projet_compilation.git (fetch) origin git@github.com:Krozark/projet_compilation.git (push)
sudo ifconfig [wlan0] mtu 1460 (lower than 1500)
我看到了一个和同事一样的问题,这个问题和SSH是网络相关的,我们当时使用的是VPN连接,结果是网络MTU设置太高(如果我没有记错,结果是1492),我们用小的值修饰,直到它开始工作。 所以看起来有点像网络分组分裂。
不知道是否这是你的情况,但尽管它不会伤害尝试改变你的网络MTU到一个较低的值,看看它是否工作。
当然,如果这是Github方面的问题,这不会是一个因素(事实上,你可以创建一个新的回购,并推高,导致我相信它不是MTU相关)。
正如你所说的固定你的MTU一直在缓解这个问题是有效的,我建议一个更有针对性的解决方案。
iptables -t mangle -I OUTPUT 1 -o wlan0 -d 207.97.227.239 \ -p tcp --dport 22 --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1420
这劫持了与服务器的初始TCP协商(仅适用于github.com的IP上的SSH),并强制MSS到1420.这与设置MTU是一样的,但是更具选择性。 在某些情况下,如果您不能轻松保存MTU更改,并且每次界面被关闭时都需要重新应用,那么这样做很好。
为了允许40字节的TCP报头+数据段(MSS是最大段大小),MSS需要比MTU小40。
需要做这样的事情的最常见的原因是(即将MTU降到1500以下)是VPN和隧道。 PMTU是为了解决这个问题,但是它在很多情况下都会失败,因此您需要手动调整某些路径的MTU。 使用iptables规则,您可以根据不同的问题路径对不同的流量进行定制,而不是迫使您将MTU设置为所有路径的最小公分母。 这样做的问题是,通过增加数据头比率来缓慢地减少有效带宽。
如果本地是好的(即你的git和SSH工作正常),那么它应该是一个远程端的问题:
检查GitHub状态 。
3:22 UTC我们正在调查与我们的一个文件服务器的问题,少数库是不可用的。
您可能会受到GitHub上提到的当前经常性访问问题的影响。
或者这是一个连接问题(如缺少VPN路由 )