Skip to content

Commit 9ffef05

Browse files
committed
Added release script
1 parent 9a43e59 commit 9ffef05

File tree

1 file changed

+39
-0
lines changed

1 file changed

+39
-0
lines changed

release.sh

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
#!/bin/zsh
2+
3+
LAST_VERSION=$(git tag -l | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n | tail -n 1)
4+
NEXT_VERSION=$(echo $LAST_VERSION | awk -F. -v OFS=. 'NF==1{print ++$NF}; NF>1{if(length($NF+1)>length($NF))$(NF-1)++; $NF=sprintf("%0*d", length($NF), ($NF+1)%(10^length($NF))); print}')
5+
VERSION=${1-${NEXT_VERSION}}
6+
DEFAULT_MESSAGE="Release"
7+
MESSAGE=${2-${DEFAULT_MESSAGE}}
8+
RELEASE_BRANCH="release/$VERSION"
9+
10+
git add .
11+
git commit -am $MESSAGE
12+
git push
13+
14+
# Create release branch
15+
git checkout -b $RELEASE_BRANCH develop
16+
gulp build
17+
git add .
18+
git commit -am "Build $NEXT_VERSION"
19+
git push origin $RELEASE_BRANCH
20+
21+
# Merge release branch in master
22+
git checkout master
23+
git merge $RELEASE_BRANCH
24+
25+
# Merge release branch in develop
26+
git checkout develop
27+
git merge $RELEASE_BRANCH
28+
git push origin develop
29+
30+
# Tag and push master
31+
git checkout master
32+
git tag $VERSION
33+
git push origin master --tags
34+
35+
# Remove release branch
36+
git branch -d $RELEASE_BRANCH
37+
38+
# Return to develop
39+
git checkout develop

0 commit comments

Comments
 (0)