快速 Clone Github 上的开源项目

🤔❓ 有时候, 我们关注某个公司或者组织, 下面有非常多的项目源代码, 那么想要学习或者 Fork 怎么办呢?

🔥🔥 答案就是先把代码全部下载下来 👍🏻👍🏻

首先进入 Github 找到项目列表, 将列表代码块复制到文本文件中, 然后使用命令

cat ./proj.txt| egrep -v 'stargazers|issues|pulls|data-hovercard-url|search|forks' | grep 'href'

找到其中的项目, 再略微进行手动处理, 就可以得到一个项目列表, 例如:

1
2
3
4
docs
frontend
backend
...

然后使用命令循环批量下载项目:

cat proj.txt | xargs -n 1 bash gitclone.sh 组织名

该命令循环调用 gitclone 下载所有项目以及分支, 其中 gitclone 的代码如下

gitclone.shview raw
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/bash

proj=$1
name=$2
url=https://github.com/${proj}/${name}.git
echo "cloning ${url}"

mkdir -p ${proj}

cd ${proj}
git clone ${url}

cd ${name}
git branch -r | grep -v '\->' | while read remote; do git branch --track "${remote#origin/}" "$remote"; done
git fetch --all
git pull --all

cd ../..

至此, 所有项目代码均下载到 组织名 文件夹下.

Donate - Support to make this site better.
捐助 - 支持我让我做得更好.