blob: 229f4ee5e703ef8faf7cec44aa887ca743476b88 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#!/bin/bash
set -eu
args=()
for url in "$@"
do
case $url in
https://*|git://*)
dir=${url#*//}
dir=${dir%/*}
;; ssh://*)
dir=${url#ssh://}
dir=${dir#*@}
;; git@*)
dir=${url#git@}
dir=${dir/://}
dir=${dir%/*}
;; *)
args+=("$url")
continue
esac
[[ $dir ]] || { echo >&2 no directory; exit 1;}
h=${dir%%:*}
[[ $h != $dir ]] && dir=$h/${dir#*/}
mkdir -vp ~/src/"$dir"
cd ~/src/"$dir"
git clone --verbose --progress "${args[@]}" "$url"
args=()
done
|