Improve helper scripts

Note: Still to be tested (when upgrading to Qt 5.11.0).
This commit is contained in:
Martchus 2018-04-22 12:30:32 +02:00
parent 76796b341d
commit 2a5ea3cade
2 changed files with 42 additions and 3 deletions

View File

@ -0,0 +1,26 @@
#set -euxo pipefail
set -e # abort on first error
shopt -s nullglob
if ! [[ $1 ]] || ! [[ $2 ]]; then
echo 'No version specified, must specify the new and old version, eg. 5.9.2 5.9.1'
echo "Usage: $0 newversion"
exit -1
fi
newversion="$1"
# determine remote to push
remote=
for maybe_remote in 'martchus' 'origin'; do
if git remote get-url $maybe_remote; then
remote=$maybe_remote
break
fi
done
if ! [[ $remote ]]; then
echo "Unable to detect remote"
exit -2
fi
git cherry-pick --continue
git push -u $maybe_remote "$newversion-mingw-w64"

View File

@ -4,12 +4,25 @@ shopt -s nullglob
if ! [[ $1 ]] || ! [[ $2 ]]; then if ! [[ $1 ]] || ! [[ $2 ]]; then
echo 'No version specified, must specify the new and old version, eg. 5.9.2 5.9.1' echo 'No version specified, must specify the new and old version, eg. 5.9.2 5.9.1'
echo "Usage: $0 newversion oldversion" echo "Usage: $0 newversion oldversion [old-branch-suffix]"
exit -1 exit -1
fi fi
newversion="$1" newversion="$1"
oldversion="$2" oldversion="$2"
oldbranchsuffix="$3"
# determine branch from old version
oldversionbranch="$oldversion-mingw-w64"
if [[ $oldbranchsuffix ]] \
&& oldversionbranch="$oldversionbranch-$oldbranchsuffix"
if [[ $(git branch | grep "$oldversionbranch" | wc -l) -gt 1 ]]; then
echo 'Which of the following branches was the latest for the old version?'
git branch | grep "$oldversionbranch"
echo 'Please disambiguate by specifying the corresponding suffix as 3rd argument.'
exit -1
fi
# determine remote to push
remote= remote=
for maybe_remote in 'martchus' 'origin'; do for maybe_remote in 'martchus' 'origin'; do
if git remote get-url $maybe_remote; then if git remote get-url $maybe_remote; then
@ -17,13 +30,13 @@ for maybe_remote in 'martchus' 'origin'; do
break break
fi fi
done done
if ! [[ $remote ]]; then if ! [[ $remote ]]; then
echo "Unable to detect remote" echo "Unable to detect remote"
exit -2 exit -2
fi fi
# update Git checkout, create new branch with rebased commits, push to remote
git remote update git remote update
git checkout -b "$newversion-mingw-w64" "v$newversion" git checkout -b "$newversion-mingw-w64" "v$newversion"
git cherry-pick "v$oldversion..$oldversion"-mingw-w64 git cherry-pick "v$oldversion..$oldversionbranch"
git push -u $maybe_remote "$newversion-mingw-w64" git push -u $maybe_remote "$newversion-mingw-w64"