Intégration de la branche prel-fixes

This commit is contained in:
Jephté Clain 2015-09-08 10:14:23 +04:00
commit 69ee45a97b
1 changed files with 39 additions and 4 deletions

43
prel
View File

@ -84,7 +84,7 @@ OPTIONS
-n, --no-write -n, --no-write
Si une nouvelle branche est créée avec -u, NE PAS mettre à jour le Si une nouvelle branche est créée avec -u, NE PAS mettre à jour le
fichier VERSION.txt avec pver. Utiliser cette option si la mise à jour fichier VERSION.txt avec pver. Utiliser cette option si la mise à jour
du numéro de version doit être faite par manière particulière. du numéro de version doit être faite d'une manière particulière.
-e, --edit -e, --edit
Editer le fichier CHANGES.txt autogénéré par -u -w Editer le fichier CHANGES.txt autogénéré par -u -w
Cette option est surtout utile si -m est utilisé avec -u, pour donner la Cette option est surtout utile si -m est utilisé avec -u, pour donner la
@ -173,6 +173,12 @@ fi
git_ensure_gitvcs git_ensure_gitvcs
push_branches=()
push_tags=()
push_deferred=
[ -n "$UTOOLS_VCS_OFFLINE" ] && push_deferred= || push_deferred=1
[ -n "$update" -a -n "$merge" ] && UTOOLS_VCS_OFFLINE=1
setx branch=git_get_branch setx branch=git_get_branch
if [ "$action" == update ]; then if [ "$action" == update ]; then
@ -272,6 +278,7 @@ if [ "$action" == checkout ]; then
git_ensure_cleancheckout git_ensure_cleancheckout
is_any_branch "$release" master release || die "$release: ce n'est pas une branche de release" is_any_branch "$release" master release || die "$release: ce n'est pas une branche de release"
r=0 r=0
newbranch=
if git_have_branch "$release"; then if git_have_branch "$release"; then
git checkout "$release"; r=$? git checkout "$release"; r=$?
elif git_have_rbranch "$release"; then elif git_have_rbranch "$release"; then
@ -282,6 +289,7 @@ Vous allez créer la nouvelle branche de release ${COULEUR_VERTE}$release${COULE
à partir de la branche source ${COULEUR_BLEUE}$source${COULEUR_NORMALE}" à partir de la branche source ${COULEUR_BLEUE}$source${COULEUR_NORMALE}"
ask_yesno "Voulez-vous continuer?" O || die ask_yesno "Voulez-vous continuer?" O || die
newbranch=1
git_ensure_branch "$release" "$source" "$origin" git_ensure_branch "$release" "$source" "$origin"
[ $? -eq 2 ] && die "Impossible de créer la branche $release. Veuillez vérifier que la branche $source existe" [ $? -eq 2 ] && die "Impossible de créer la branche $release. Veuillez vérifier que la branche $source existe"
git checkout "$release"; r=$? git checkout "$release"; r=$?
@ -292,6 +300,10 @@ Vous allez créer la nouvelle branche de release ${COULEUR_VERTE}$release${COULE
fi fi
if [ "$r" -eq 0 -a -n "$write" ]; then if [ "$r" -eq 0 -a -n "$write" ]; then
set cwd=pwd
setx workdir=git rev-parse --show-toplevel
[ -d "$workdir" ] && cd "$workdir"
commitmsg="Init changelog" commitmsg="Init changelog"
if [ -n "$newver" ]; then if [ -n "$newver" ]; then
pver -uv "$newver" && commitmsg="Init changelog & version $newver" pver -uv "$newver" && commitmsg="Init changelog & version $newver"
@ -324,6 +336,8 @@ $modifs"
git add -A git add -A
git commit -m "$commitmsg" git commit -m "$commitmsg"
cd "$cwd"
fi fi
fi fi
if [ "$r" -eq 0 ]; then if [ "$r" -eq 0 ]; then
@ -331,12 +345,14 @@ $modifs"
git_fast_forward "$release" "" "$origin" git_fast_forward "$release" "" "$origin"
fi fi
set -- "$release"
if [ "$r" -eq 0 -a -n "$merge" ]; then if [ "$r" -eq 0 -a -n "$merge" ]; then
# mettre à jour la branche sur laquelle on se trouve # mettre à jour la branche sur laquelle on se trouve
setx branch=git_get_branch setx branch=git_get_branch
set -- "$release"
action=merge action=merge
elif [ "$r" -eq 0 -a -n "$newbranch" ]; then
action=push
array_addu push_branches "$release"
else else
exit "$r" exit "$r"
fi fi
@ -391,11 +407,12 @@ if [ "$action" == merge ]; then
if [ -n "$newver" ]; then if [ -n "$newver" ]; then
estepn "Création du tag $newver" estepn "Création du tag $newver"
array_addu push_tags "$newver"
git tag --force "$newver" || die git tag --force "$newver" || die
if git_have_remote "$origin"; then if git_have_remote "$origin"; then
if [ -z "$UTOOLS_VCS_OFFLINE" ]; then if [ -z "$UTOOLS_VCS_OFFLINE" ]; then
git push "$origin" tag "$newver" git push "$origin" tag "$newver"
else elif [ -z "$push_deferred" ]; then
eimportant "Le tag $newver n'a pas été poussé vers l'origine. eimportant "Le tag $newver n'a pas été poussé vers l'origine.
Il faudra le faire manuellement avec la commande suivante: Il faudra le faire manuellement avec la commande suivante:
$(qvals git push "$origin" tag "$newver") $(qvals git push "$origin" tag "$newver")
@ -445,6 +462,24 @@ Veuillez le faire manuellement avec la commande suivante:
$(qvals git push "$origin" ":$release")" $(qvals git push "$origin" ":$release")"
fi fi
fi fi
action=push
array_addu push_branches master
array_addu push_branches develop
fi
if [ "$action" == push -a -n "$push_deferred" ]; then
if git_have_remote "$origin"; then
estepi "Mise à jour de l'origine"
for tag in "${push_tags[@]}"; do
git push "$origin" tag "$tag"
done
for branch in "${push_branches[@]}"; do
setx rbranch=git_get_branch_rbranch "$branch" "$origin"
rbranch="${rbranch#refs/remotes/$origin/}"
git push "$origin" "$branch:$rbranch"
done
fi
fi fi
if [ "$action" == summary ]; then if [ "$action" == summary ]; then