Skip to content

Commit 3c7cd58

Browse files
committed
chore: Allow to release from not master
1 parent 5ba5849 commit 3c7cd58

File tree

1 file changed

+26
-6
lines changed

1 file changed

+26
-6
lines changed

release.sh

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,23 @@
33
# fail on unset variables and command errors
44
set -eu -o pipefail # -x: is for debugging
55

6-
if [ "$(git branch --show-current)" != "master" ]; then
7-
echo "$0: Current branch is not master" 1>&2
8-
exit 1
6+
CURRENT_BRANCH="$(git branch --show-current)"
7+
if [ "${CURRENT_BRANCH}" != "master" ]; then
8+
echo "$0: Current branch ${CURRENT_BRANCH} is not master, continue? (y/n)"
9+
read -r res
10+
if [ "${res}" = "n" ]; then
11+
echo "$0: Stop script"
12+
exit 0
13+
fi
14+
fi
15+
16+
PRERELEASE_TYPE_LIST="prerelease prepatch preminor premajor"
17+
if [ "${CURRENT_BRANCH}" != "master" ]; then
18+
RELEASE_TYPE_LIST="${PRERELEASE_TYPE_LIST}"
19+
else
20+
RELEASE_TYPE_LIST="${PRERELEASE_TYPE_LIST} patch minor major"
921
fi
1022

11-
RELEASE_TYPE_LIST="prerelease prepatch patch preminor minor major premajor"
1223
if command -v fzf; then
1324
RELEASE_TYPE=$(echo "${RELEASE_TYPE_LIST}" | tr ' ' '\n' | fzf --layout=reverse)
1425
else
@@ -26,7 +37,11 @@ if [ "${res}" = "n" ]; then
2637
fi
2738

2839
git fetch origin
29-
git pull origin master
40+
if [ "${CURRENT_BRANCH}" != "master" ]; then
41+
git pull origin "${CURRENT_BRANCH}"
42+
else
43+
git pull origin master
44+
fi
3045
git tag -d v3 || true
3146
git pull origin --tags
3247

@@ -43,6 +58,11 @@ git rm ./lib/index.js
4358
rm -rf ./lib
4459
git commit -m "chore(release): Remove build assets [skip ci]"
4560

61+
if [ "${CURRENT_BRANCH}" != "master" ]; then
62+
git push origin "${CURRENT_BRANCH}"
63+
else
64+
git push origin master
65+
fi
66+
4667
TAG_NAME="v$(jq -r '.version' ./package.json)"
47-
git push origin master
4868
git push origin "${TAG_NAME}"

0 commit comments

Comments
 (0)