Given that now more tasks download/clone things, it is a waste of time to redownload the same stuff when it is guaranteed the thing we download not changed. So the idea to download stuff into tmp/downloads/<hash of download command>, and if it exists assume that it is the same and just skip the download. After that just copy downloaded files. Also because it is IO-bound task, and downloads do not depend on each other, it is possible to run download tasks in parallel.
Given that now more tasks download/clone things, it is a waste of time to redownload the same stuff when it is guaranteed the thing we download not changed. So the idea to download stuff into
tmp/downloads/<hash of download command>, and if it exists assume that it is the same and just skip the download. After that just copy downloaded files. Also because it is IO-bound task, and downloads do not depend on each other, it is possible to run download tasks in parallel.