我试图下载大量的开源项目,比如10万。
我首先使用github api获取了许多带有用户名的项目名称。然后我使用以下shell脚本下载所有项目:
file="repo-list.txt"
while IFS= read -r line
do
echo "https://github.com/$line.git"
git clone "https://github.com/$line.git"
done <"$file"
问题是终端经常弹出请求用户名和密码的请求。这样,我就无法下载很多项目。我确实使用以下行更改了git设置:
git config --global credential.helper 'cache --timeout=3600'
repo-list.txt包含如下文本行:
sakachi99/MarkTracker
gnud/rainbow-shooter
whistlerbrk/ripple
jimpick/jaikuengine
kemper/ai-contest-ruby
jmtame/will_paginate
tom317/shopaholic
JasonTrue/fluent-nhibernate
jphalip/django-treemenus
jonashaag/configfiles
dchristo/CodeProblems
jesperdj/scala-maven-example
jchris/ohai
blueyed/fred-staging
jasonmcleod/hashbrowns.js
有没有办法跳过请求或从github下载大量项目的更好方法?
答案 0 :(得分:2)
如果您改为
git clone "git://github.com/$line.git"
然后,假设存储库是公共的,git将不会提示您输入任何凭据。它也会稍快一些。