Примерно так должно получиться:
#!/bin/sh
while read line; do
proto=$(echo $line | cut -f 1 -d :)
url=$(echo $line | cut -f 2 -d :)
url="${proto}:${url}"
tag=$(echo $line | cut -f 3 -d :)
repo=$(echo $url | cut -f 4 -d /)
git clone $url && git --git-dir=$repo/.git checkout $tag
done < $1