aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesús <heckyel@hyperbola.info>2021-01-26 18:22:27 -0500
committerJesús <heckyel@hyperbola.info>2021-01-26 18:22:27 -0500
commit316ec1383180865b490f3f067d7595f31165e984 (patch)
tree3aa5250af45d7a73f7dff4fcacbc88a40e316180
parent58f4a04f5ccdc5397147d7c1adddb52285220891 (diff)
downloadgit-snapsign-316ec1383180865b490f3f067d7595f31165e984.tar.lz
git-snapsign-316ec1383180865b490f3f067d7595f31165e984.tar.xz
git-snapsign-316ec1383180865b490f3f067d7595f31165e984.zip
refactoring in format
improve performance
-rwxr-xr-xgit-snapsign24
1 files changed, 14 insertions, 10 deletions
diff --git a/git-snapsign b/git-snapsign
index c5e37d4..c1dce21 100755
--- a/git-snapsign
+++ b/git-snapsign
@@ -162,16 +162,20 @@ trap 'rm -rf "${tmpdir}"' EXIT HUP INT QUIT TERM
if [[ -n "${tag}" ]]; then
archive="${tmpdir}/${prefix}-${tag#v}.${format}"
- if [ "$format" == "tar.lz" ]; then
- git archive --format=tar --prefix "${prefix}-${tag#v}/" \
- "${tag}" | lzip -c > "${archive}"
- elif [ "$format" == "tar.xz" ]; then
- git archive --format=tar --prefix "${prefix}-${tag#v}/" \
- "${tag}" | xz -c > "${archive}"
- else
- git archive --format "${format}" --prefix "${prefix}-${tag#v}/" \
- --output "${archive}" "${tag}"
- fi
+ case "${format}" in
+ tar.lz)
+ git archive --format=tar --prefix "${prefix}-${tag#v}/" \
+ "${tag}" | lzip -c > "${archive}"
+ ;;
+ tar.xz)
+ git archive --format=tar --prefix "${prefix}-${tag#v}/" \
+ "${tag}" | xz -c > "${archive}"
+ ;;
+ *)
+ git archive --format "${format}" --prefix "${prefix}-${tag#v}/" \
+ --output "${archive}" "${tag}"
+ ;;
+ esac
if ! "${gpg:-gpg}" --output "${archive}.asc" --armor \
--sign-with "${keyid}" --detach-sign <"${archive}"