【已失效】Xcode GUI 添加 SPM 依赖的时候访问不了 github,无视 git config proxy 配置解决方案

openradar 中提出者指出了原因:Xcode 调用 libgit2 时传入了 GIT_PROXY_NONE,无视了 git config 中的 proxy 配置。作者说用了自己打的 libgit2 包可以解决问题,但没说具体怎么操作。

看了一下 libgit2 里的声明:

	/**
	 * Do not attempt to connect through a proxy
	 *
	 * If built against libcurl, it itself may attempt to connect
	 * to a proxy if the environment variables specify it.
	 */
	GIT_PROXY_NONE,

里面说如果构建时使用了 curl (一般都会使用 curl?)会遵循 curl 的配置,于是在 ~/.curlrc 中加入一行(具体 proxy 依你自己的配置来指定):

proxy = socks5://127.0.0.1:1080

验证了一下,Xcode 可以正常使用 proxy 添加 SPM 依赖了。更新:似乎不好使

注:
上面是为了解决在 Xcode GUI 中添加新的 SPM 依赖时遇到的问题,由于 Xcode 的项目不支持 Package.swift,目前只能使用 GUI 来添加。也可以使用旁路由来解决,Xcode 所在的机器只需要设置网关为旁路由的网关即可,旁路由上跑 proxy。

如果项目之前已经添加过 SPM 了,解析时卡住的话可以用命令行操作,具体可参见 stackoverflow

posted on 2021-12-22 12:43  westwindrest  阅读(601)  评论(0编辑  收藏  举报