diff --git a/lib/ulib/ptools b/lib/ulib/ptools index 0206f92..b32a9fb 100644 --- a/lib/ulib/ptools +++ b/lib/ulib/ptools @@ -659,11 +659,7 @@ BEGIN { if [ -n "$setrelease" ]; then incversion=patchlevel elif [ -n "$setsnapshot" ]; then - if [ "$patchlevel" -eq 0 ]; then - incversion=minor - else - incversion=patchlevel - fi + incversion=patchlevel fi fi @@ -689,7 +685,11 @@ BEGIN { "$versionp : correction de bugs (-p)" "$versionk : ne pas incrémenter la version" ) - nextv="${nextvs[1]}" + if [ -z "$maven_update" ]; then + nextv="${nextvs[1]}" + else + nextv="${nextvs[2]}" + fi simple_menu nextv nextvs \ -t "Incrémenter le numéro de version" \ -m "Veuillez choisir la prochaine version" @@ -716,7 +716,7 @@ BEGIN { esac # afficher le résultat final - local -a depfiles + local -a depfiles regfiles psemver_setvar version if [ -n "$file" ]; then if [ "$source" == file ]; then @@ -742,7 +742,7 @@ BEGIN { edebug "Maj version de $file au chemin XPATH ${filevpath:-par défaut}" __pver_pom_set_version "$file" "$version" "$filevpath" case $? in - 0|1) :;; + 0|1) array_addu regfiles "$file";; 2) array_addu depfiles "$file";; *) return 1;; esac @@ -761,12 +761,16 @@ BEGIN { if isatty; then estepn "La nouvelle version est $version" if [ ${#depfiles[*]} -gt 0 ]; then - local msg="Les fichiers suivants ont été modifiés, et leur version doit être mise à jour:" + local msg for file in "${depfiles[@]}"; do + array_contains regfiles "$file" && continue + if [ -z "$msg" ]; then + msg="Les fichiers suivants ont été modifiés, et leur version doit être mise à jour:" + fi msg="$msg $(qvals pver -uzw "$file" -R --menu)" done - eimportant "$msg" + [ -n "$msg" ] && eimportant "$msg" fi else echo "$version" diff --git a/prel b/prel index c5f616a..f634ab3 100755 --- a/prel +++ b/prel @@ -241,6 +241,8 @@ setx branch=git_get_branch update_opt= if [ "$action" == update ]; then + git_ensure_cleancheckout + if [ -n "$maven_update" ]; then setx oldver=pver --gw develop: enote "La version de la branche develop est $oldver" @@ -281,7 +283,11 @@ if [ "$action" == update ]; then setx majorv=pver -s "$oldver" -ux "${pver_opts[@]}" setx minorv=pver -s "$oldver" -uz "${pver_opts[@]}" setx patchlevelv=pver -s "$oldver" -up "${pver_opts[@]}" - release="release-$minorv" + if [ -z "$maven_update" ]; then + release="release-$minorv" + else + release="release-$patchlevelv" + fi branches=("release-$majorv" "release-$minorv" "release-$patchlevelv" master) simple_menu release branches \ -t "Basculer vers une nouvelle branche de release" \ @@ -511,7 +517,7 @@ ou celle-ci pour pour pousser TOUS les tags: git merge "$release" -m "Intégration de la branche $release" --no-ff || die if [ -n "$maven_update" ]; then - [ -n "$update_opt" ] || update_opt=-z + [ -n "$update_opt" ] || update_opt=-p pver -u $update_opt -S git add -A git commit -m "Branche develop en version $(pver --show)" || die diff --git a/pver b/pver index 33fc3db..ededd1c 100755 --- a/pver +++ b/pver @@ -89,7 +89,9 @@ Les options suivantes impliquent --update: -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. + Augmenter le numéro de version mineure. C'est la valeur par défaut, sauf + avec --maven-update où c'est l'option -p qui est sélectionnée par + défaut. -p, --patchlevel Augmenter le numéro de patch. -k, --keep @@ -189,14 +191,9 @@ OPTIONS AVANCEES x.A.0-SNAPSHOT --> x.A.0 x.A.y-SNAPSHOT --> x.B.0 x.A.y --> x.B.0-SNAPSHOT - Avec l'option -p: + Avec l'option -p, qui est celle sélectionnée par défaut: x.y.z-SNAPSHOT --> x.y.z - x.y.A --> x.y.B-SNAPSHOT - Si aucune des options -x, -z, -p n'est utilisée, alors les parties sont - incrémentées selon les règles suivantes: - x.y.z-SNAPSHOT --> x.y.z (comme -p) - x.A.0 --> x.B.0-SNAPSHOT (comme -z) - x.y.A --> x.y.B-SNAPSHOT (comme -p)" + x.y.A --> x.y.B-SNAPSHOT" } pver "$@"