version="$2"
destination=qemu-${version}
-git clone "${src}" ${destination}
+git clone --single-branch -b "v${version}" -c advice.detachedHead=false \
+ "${src}" ${destination}
+
pushd ${destination}
-git checkout "v${version}"
-git submodule update --init
+
+git submodule update --init --single-branch
(cd roms/seabios && git describe --tags --long --dirty > .version)
(cd roms/skiboot && ./make_version.sh > .version)
# Fetch edk2 submodule's submodules, since it won't have access to them via
# submodule dependencies, so we continue to handle these on a case-by-case
# basis for now.
(cd roms/edk2 && \
- git submodule update --init -- \
+ git submodule update --init --depth 1 -- \
ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 \
BaseTools/Source/C/BrotliCompress/brotli \
CryptoPkg/Library/OpensslLib/openssl \