github代码快速批量下载
作者:互联网
最近需要下载github代码发现速度出奇的慢,修改hosts效果也不明显,加上github代码内有些文件夹是以@XXXX形式的链接存在,需使用 --recurse-submodules 递归下载子文件夹。
好在发现https://hub.fastgit.org/ 包括国内一些镜像网站提供了一个国内快速下载github的解决方案。
用https://hub.fastgit.org/ 直接替换 https://github.com/可加快下载速度。
但是递归下载子模块时仍然需要链接到https://github.com/下载,导致子模块下载出错。
需要手动将下载后的项目文件夹中的“.gitmodule”文件内的
url = https://github.com/xxxx 修改文为:url = https://hub.fastgit.org/XXXX
单项目下载还可以接受,批量下载则比较麻烦,因此写了一个简单的批处理进行解决
fastgit.bat //单个调用
call_fastgit.bat // 批量调用
fastgit.bat 内容如下
@echo off
setlocal enabledelayedexpansion
echo "Usage:fastgit.bat https://github.com/horsicq/stringsx64dbg.git"
echo %1
set str=%1
set remain=%str%
set toFind=git
set isFind=false
set now=
set next=
:loop
for /f "tokens=1* delims=./" %%a in ("%remain%") do (
::echo %%b
set now=%%a
set next=%%b
::pause
if "%toFind%"=="%%b" (
set isFind=true
::echo %now% finded
goto :finded
)
set remain=%%b
)
if defined remain goto :loop
:finded
git clone https://hub.fastgit.org/horsicq/stringsx64dbg.git
cd %now%
git tag
git describe --tags --abbrev=0
for /f "delims=" %%i in ('git tag') do set new_tag=%%i
cd ..
rmdir /s /q %now%
echo 下载命令:git clone -b %new_tag% https://hub.fastgit.org/horsicq/stringsx64dbg.git
git clone -b %new_tag% https://hub.fastgit.org/horsicq/stringsx64dbg.git
cd %now%
for /f "delims=" %%I in (.gitmodules) do (
set "aa=%%I"
set "aa=!aa:github.com=hub.fastgit.org!"
echo !aa!>>1.txt)
del .gitmodules
rename 1.txt .gitmodules
git submodule update --init --recursive
echo %now%" 下载成功!"
cd ..
call_fastgit.bat 内容如下:
fastgit.bat https://github.com/horsicq/stringsx64dbg.git
pause
标签:git,set,批量,%%,代码,github,fastgit,https 来源: https://blog.csdn.net/qq_43522781/article/details/114451672