From f4e0bb584286823e5e91ee98b2039ae0cbb5a067 Mon Sep 17 00:00:00 2001 From: Siraaj Khandkar Date: Tue, 12 Mar 2019 21:36:41 -0400 Subject: [PATCH] Add GitHub batch-cloning functions --- lib/login_functions.sh | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/lib/login_functions.sh b/lib/login_functions.sh index 18754c4..3e84d45 100644 --- a/lib/login_functions.sh +++ b/lib/login_functions.sh @@ -44,3 +44,22 @@ hump() { howto() { cd $HOME/Archives/Documents/HOWTOs && cat $(fzf) && cd - } + +gh_fetch_repos() { + curl "https://api.github.com/$1/$2/repos?page=1&per_page=10000" +} + +gh_clone() { + gh_fetch_repos "$1" "$2" \ + | jq --raw-output '.[] | select(.fork | not) | .git_url' \ + | parallel -j 25 \ + git clone {} +} + +gh_clone_user() { + gh_clone 'users' "$1" +} + +gh_clone_org() { + gh_clone 'orgs' "$1" +} -- 2.20.1