#!/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 ptools function display_help() { uecho "$scriptname: basculer sur une branche de hotfix USAGE $scriptname [options] [HOTFIX [SOURCE]] - Vérifier s'il n'y a pas de modifications locales. Sinon, proposer de faire un commit ou un stash. - Si TOPIC est spécifié, et si on n'est pas déjà sur cette branche, basculer vers cette nouvelle branche. S'il s'agit d'une nouvelle branche, la baser sur la branche SOURCE, qui vaut par défaut master - Si TOPIC n'est pas spécifié, afficher un menu pour choisir la branche de destination. 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. -O, --origin ORIGIN Spécifier le nom de l'origine. Par défaut, utiliser 'origin' -m, --merge Si la branche actuelle est une branche de hotfix, la merger dans master (ou dans la branche de release), et dans develop, puis la supprimer. Puis basculer sur la branche master. -l, --log Afficher les modifications actuellement effectuée dans la branche de hotfix par rapport à master. -d, --diff Afficher les modifications actuellement effectuée dans la branche de hotfix par rapport à master, sous forme de diff." } projdir= origin=origin parse_opts "${PRETTYOPTS[@]}" \ --help '$exit_with display_help' \ -C:,--projdir: projdir= \ -O:,--origin: origin= \ @ args -- "$@" && set -- "${args[@]}" || die "$args" if [ -n "$projdir" ]; then cd "$projdir" || die fi git_ensure_gitvcs