由于近期国内Github Raw的可用IP越来越少,通过修改hosts文件解决rosdep update超时问题的方法已经不太好用,本文通过修改rosdep源码中下载资源的函数来解决这一问题。
网站https://ghproxy.com/支持github的资源代理,非常好用,我们将用此代理加速rosdep对Github Raw的访问,进而解决rosdep update超时问题。
首先定位rosdep资源下载函数。从报错信息中得知,该函数名为download_rosdep_data,位于/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py。我们修改这一函数,添加:
url="https://ghproxy.com/"+url
应用ghproxy的代理服务。

用同样的方法修改/usr/lib/python2.7/dist-packages/rosdistro/__init__.py里面的DEFAULT_INDEX_URL(感谢评论区@p4227117的补充)。
即将DEFAULT_INDEX_URL 进行如下替换:
DEFAULT_INDEX_URL = 'https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/index

本文介绍了如何通过修改rosdep和rosdistro源码,结合ghproxy.com代理服务,解决由于GithubRaw IP限制导致的rosdepupdate和rosdistro更新超时问题。具体方法包括修改相关源码文件中的URL,添加代理前缀,确保rosdep和rosdistro能正常访问GitHub资源。
最低0.47元/天 解锁文章
729





