Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

解决使用https协议获取github仓库成功率低速度慢的问题 #189

Open
soapgu opened this issue Feb 1, 2023 · 0 comments
Open
Labels
IDE Good for newcomers problem problem or trouble

Comments

@soapgu
Copy link
Owner

soapgu commented Feb 1, 2023

  • 梦魇的开始

一直以来github无论是自己仓库的提交还是拿取第三方库使用http协议都会碰到一样的问题

关键问题,这个问题一直没有解决!

我以前选择了绕过问题。如果配好了ssh key再走git://协议,这样就基本很稳定了。

  • 衍生的其他问题解决

对于有些脚本,比如iOS的Pod安装,里面会用https去拉取github库。
这时候使用了“骚操作”去绕行

 [url "[email protected]:"]
	insteadOf = https://github.com/

这样就完成了偷梁换柱(挂羊头卖狗肉)

原解决方案

这次使用了Swift Package Manager ,就再也绕不过去了!XCode会再做一次验证,偷梁换柱的操作就通不过验证了。

  • 回到原点,长久以来的疑问

好了现在绕路解决方案以及失效了。需要重新提出解决方案了。
回到问题原点。灵魂拷问,github访问困难我可以理解,为啥我“翻墙”以后还是不行!
当我在网页上流畅访问油管时不可能怀疑是“翻墙”本身的问题

  • 翻墙做了哪些设置?

图片

图片

  • 网页为啥能翻墙?
    应该是浏览器“应用”了这些设置

  • git为啥不能翻墙
    好了长久以来的疑问应该有点解了!
    那么反过来就是执行git命令的时候是不会应用系统代理配置的。

  • git翻墙的解决方案

  • 找出翻墙代理配置

图片

执行后会进入到剪切板
export https_proxy=http://127.0.0.1:7890
http_proxy=http://127.0.0.1:7890
all_proxy=socks5://127.0.0.1:7890
  • “一次性”代理设置
git clone -c https.proxy="http://127.0.0.1:7890" https://github.com/soapgu/PlayPen.git
  • “全局”代理设置

设置

git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy http://127.0.0.1:7890
git config --global core.gitProxy socks5://127.0.0.1:7890

还原工作

git config --global --unset http.proxy 
git config --global --unset https.proxy
git config --global --unset core.gitProxy
  • 总结

https协议亲测有效,github连接还未验证,估计十拿九稳。
原来的解决方案可以扔垃圾箱里了。
这次教训在于。对翻墙软件的“想当然”了,只要开了就什么程序都会自动翻墙了。造成很大的思维盲区。
本身不是什么很高深技巧,还在于要深究原理。

@soapgu soapgu added IDE Good for newcomers problem problem or trouble labels Feb 1, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
IDE Good for newcomers problem problem or trouble
Projects
None yet
Development

No branches or pull requests

1 participant