2014-01-18 02:05:45 +04:00
|
|
|
#!/bin/bash
|
|
|
|
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
2014-07-07 22:06:38 +04:00
|
|
|
source "$(dirname "$0")/lib/ulib/ulib" || exit 1
|
2015-03-13 00:15:53 +04:00
|
|
|
urequire DEFAULTS ptools
|
2014-01-18 02:05:45 +04:00
|
|
|
|
2015-03-13 00:15:53 +04:00
|
|
|
function pver_display_help() {
|
2015-03-05 09:46:23 +04:00
|
|
|
uecho "$scriptname: gérer des numéros de version selon les règles du versionage sémantique v2.0.0 (http://semver.org/)
|
2014-01-18 02:05:45 +04:00
|
|
|
|
|
|
|
USAGE
|
|
|
|
$scriptname [options]
|
|
|
|
|
|
|
|
OPTIONS
|
|
|
|
-f, --file VERSIONFILE
|
|
|
|
Gérer le numéro de version se trouvant dans le fichier spécifié. Le
|
|
|
|
fichier est créé si nécessaire. C'est l'option par défaut si un fichier
|
|
|
|
nommé VERSION.txt se trouve dans le répertoire courant.
|
2015-03-23 13:21:56 +04:00
|
|
|
-e, --maven POMFILE
|
|
|
|
Gérer le numéro de version se trouvant dans le fichier pom.xml spécifié.
|
|
|
|
Le fichier DOIT exister. C'est l'option par défaut si un fichier nommé
|
|
|
|
pom.xml se trouve dans le répertoire courant.
|
2015-03-05 10:12:00 +04:00
|
|
|
-F, --file-string VERSIONFILE
|
|
|
|
Prendre pour valeur de départ le contenu du fichier VERSIONFILE (qui
|
|
|
|
vaut par défaut VERSION.txt)
|
|
|
|
-g, --git-string [branch:]VERSIONFILE
|
2015-03-05 09:46:23 +04:00
|
|
|
Prendre pour valeur de départ le contenu du fichier VERSIONFILE (qui
|
|
|
|
vaut par défaut VERSION.txt) dans la branche BRANCH (qui vaut par défaut
|
|
|
|
master) du dépôt git situé dans le répertoire courant.
|
2014-01-18 02:05:45 +04:00
|
|
|
-s, --string VERSION
|
|
|
|
Prendre pour valeur de départ le numéro de version spécifié
|
|
|
|
|
|
|
|
--show
|
|
|
|
Afficher le numéro de version. C'est l'action par défaut
|
2015-03-26 20:05:32 +04:00
|
|
|
--allow-empty
|
|
|
|
Supporter que la version puisse ne pas être spécifiée ni trouvée. Dans
|
|
|
|
ce cas, ne pas assumer que la version effective est 0.0.0
|
|
|
|
Avec --show et --update, ne rien afficher si la version est vide.
|
2014-01-18 02:05:45 +04:00
|
|
|
--check
|
2015-03-05 09:46:23 +04:00
|
|
|
Vérifier que le numéro de version est conforme aux règles du versionage
|
2014-01-18 11:11:38 +04:00
|
|
|
sémantique
|
2014-01-18 11:23:39 +04:00
|
|
|
--convert
|
|
|
|
--no-convert
|
|
|
|
Activer (resp. désactiver) la conversion automatique. Par défaut, si la
|
|
|
|
version est au format classique 'x.z[.p]-rDD/MM/YYYY', elle est
|
|
|
|
convertie automatiquement au format sémantique x.z.p+rYYYYMMDD
|
2014-01-18 02:05:45 +04:00
|
|
|
--eq VERSION
|
|
|
|
--ne VERSION
|
|
|
|
--lt VERSION
|
|
|
|
--le VERSION
|
|
|
|
--gt VERSION
|
|
|
|
--ge VERSION
|
|
|
|
--same VERSION
|
|
|
|
--diff VERSION
|
2014-01-18 23:07:41 +04:00
|
|
|
Comparer avec la version spécifiée. Les opérateurs --eq, --ne, --lt,
|
|
|
|
--le, --gt, et --ge ignorent l'identifiant de build (comme le demande la
|
2015-03-05 09:46:23 +04:00
|
|
|
règle du versionage sémantique). Les opérateurs --same et --diff
|
2014-01-18 23:07:41 +04:00
|
|
|
comparent aussi les identifiants de build.
|
2014-01-18 02:05:45 +04:00
|
|
|
-v, --set-version VERSION
|
|
|
|
Spécifier un nouveau numéro de version qui écrase la valeur actuelle.
|
2014-01-18 11:11:38 +04:00
|
|
|
Cette option ne devrait pas être utilisée en temps normal parce que cela
|
2015-03-05 09:46:23 +04:00
|
|
|
va contre les règles du versionage sémantique.
|
2015-03-23 13:48:16 +04:00
|
|
|
--prel
|
|
|
|
Spécifier un nouveau numéro de version qui écrase la valeur actuelle. Le
|
|
|
|
numéro de version est obtenu à partir du nom de la branche git courante,
|
|
|
|
qui doit être de la forme release-VERSION
|
2014-01-18 02:05:45 +04:00
|
|
|
-u, --update
|
|
|
|
Mettre à jour le numéro de version.
|
|
|
|
|
|
|
|
--menu
|
|
|
|
Afficher un menu permettant de choisir le composant de la version à
|
|
|
|
incrémenter
|
|
|
|
-x, --major
|
|
|
|
Augmenter le numéro de version majeure
|
|
|
|
-z, --minor
|
|
|
|
Augmenter le numéro de version mineure. C'est la valeur par défaut.
|
|
|
|
-p, --patchlevel
|
|
|
|
Augmenter le numéro de patch
|
|
|
|
|
|
|
|
-l, --prelease ID
|
2014-01-18 20:59:52 +04:00
|
|
|
Spécifier un identifiant de pré-release, à ajouter au numéro de version.
|
2014-01-18 02:05:45 +04:00
|
|
|
-a, --alpha
|
|
|
|
-b, --beta
|
|
|
|
-r, --rc
|
|
|
|
Spécifier une pré-release de type alpha, beta, ou rc. Si la version est
|
|
|
|
déjà dans ce type, augmenter la dernière valeur numérique des composants
|
|
|
|
de l'identifiant, e.g. alpha deviant alpha.1, beta-1.2 devient beta-1.3,
|
|
|
|
rc1 devient rc2
|
2015-03-05 09:46:23 +04:00
|
|
|
XXX ces fonctions ne sont pas encore implémentées
|
2014-01-18 02:05:45 +04:00
|
|
|
-R, --final, --release
|
|
|
|
Supprimer l'identifiant de prérelease
|
|
|
|
|
|
|
|
-m, --metadata ID
|
2015-03-05 09:46:23 +04:00
|
|
|
Spécifier un identifiant de build, à ajouter au numéro de version.
|
|
|
|
-M, --vcs-metadata
|
|
|
|
Spécifier l'identifiant à partir de la révision actuelle dans le
|
2015-03-26 20:05:32 +04:00
|
|
|
gestionnaire de version. Note: pour le moment, seul git est supporté.
|
|
|
|
--add-metadata ID
|
|
|
|
Ajouter l'identifiant spécifié à la valeur actuelle, au lieu de la
|
|
|
|
remplacer. Séparer l'identifiant de la valeur précédente avec un '.'"
|
2014-01-18 02:05:45 +04:00
|
|
|
}
|
|
|
|
|
2015-03-13 00:15:53 +04:00
|
|
|
pver "$@"
|