#!/bin/bash # -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8 source "$(dirname "$0")/lib/ulib/ulib" || exit 1 urequire DEFAULTS vcs ptools function display_help() { uecho "$scriptname: faire une archive du projet USAGE $scriptname OPTIONS -C, --projdir PROJDIR Spécifier le répertoire de base du projet qui est dans git. Par défaut, on travaille dans le répertoire courant et on laisse git trouver le répertoire de base du projet. Avec cette option, le répertoire courant est modifié avant de lancer les commandes git. -d, --destdir DESTDIR Spécifier le répertoire dans lequel générer l'archive. Par défaut, prendre le répertoire parent du répertoire de base du dépôt." } projdir= destdir= parse_opts "${PRETTYOPTS[@]}" \ --help '$exit_with display_help' \ -C:,--projdir: projdir= \ -d:,--destdir: destdir= \ @ args -- "$@" && set -- "${args[@]}" || die "$args" if [ -n "$projdir" ]; then cd "$projdir" || die git_ensure_gitvcs else git_ensure_gitvcs setx projdir=git rev-parse --show-toplevel cd "$projdir" || die fi setx projdir=pwd if [ -z "$destdir" ]; then setx destdir=dirname -- "$projdir" fi setx name=basename -- "$projdir" setx version=pver --show --allow-empty setx branch=git_get_branch dest="$destdir/$name${version:+-$version}+$branch.tgz" estep "Création de $(ppath "$dest")" git archive -o "$dest" --prefix="$name${version:+-$version}/" HEAD