File tree 1 file changed +8
-5
lines changed
1 file changed +8
-5
lines changed Original file line number Diff line number Diff line change 1
1
#! /bin/bash
2
2
# usage: generate-changelog.sh previous_tag next_tag
3
3
# example: generate-changelog.sh v2.7.2 v2.7.3 > CHANGELOG.new.md
4
- log=$( git log " $1 ..HEAD" --pretty=' format:* [%h](https://github.com/api-platform/core/commit/%H) %s' --no-merges)
4
+ lowerbranch=$( git branch --merged HEAD | grep ' [[:digit:]]\.[[:digit:]]' | grep -v ' *' | sort -rg | head -n 1)
5
+ log=$( git log " $1 ..HEAD" --no-merges --not $lowerbranch --pretty=' format:* [%h](https://github.com/api-platform/core/commit/%H) %s' )
5
6
6
7
diff=$(
7
8
printf " # Changelog\n\n"
8
9
printf " ## %s\n\n" " $2 "
9
10
10
- if [[ 0 != $( echo " $log " | grep fix | grep -v chore | wc -l) ]];
11
+ fixes=$( echo " $log " | grep ' fix(\|fix:' )
12
+ if [[ 0 != $( echo " $fixes " | wc -l) ]];
11
13
then
12
14
printf " ### Bug fixes\n\n"
13
- printf " $log " | grep fix | grep -v chore | sort
15
+ printf " $fixes " | sort
14
16
printf " \n\n"
15
17
fi
16
18
17
- if [[ 0 != $( echo " $log " | grep feat | grep -v chore | wc -l) ]];
19
+ feat=$( echo " $log " | grep ' feat(\|feat:' )
20
+ if [[ 0 != $( echo " $feat " | wc -l) ]];
18
21
then
19
22
printf " ### Features\n\n"
20
- printf " $log " | grep feat | grep -v chore | sort
23
+ printf " $feat " | sort
21
24
fi
22
25
)
23
26
You can’t perform that action at this time.
0 commit comments