Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1b7eed5d93 | ||
|
|
3a17dc4b52 | ||
|
|
e71d9d01fd | ||
|
|
160c5ebade | ||
|
|
fb4e7f3b1f | ||
|
|
9a472a4271 | ||
|
|
0d3ccadfef |
@@ -94,8 +94,8 @@ env:
|
||||
IGNORE_PATTERNS: >-
|
||||
^Merge |
|
||||
^:memo: Auto update CHANGELOG|
|
||||
\[skip ci\]\s*$|
|
||||
\[ci skip\]\s*$|
|
||||
\\[skip ci\\]|
|
||||
\\[ci skip\\]|
|
||||
^Bump version|
|
||||
^Release v|
|
||||
^chore: update config$|
|
||||
@@ -182,17 +182,23 @@ jobs:
|
||||
PRERELEASE_DETECTED="${{ env.RELEASE_PRERELEASE_MODE }} (manually configured)"
|
||||
fi
|
||||
|
||||
# 处理忽略模式(转换为数组)
|
||||
# 处理忽略模式(去除空格,保持管道分隔格式)
|
||||
echo "🔧 处理忽略模式..."
|
||||
PROCESSED_PATTERNS=""
|
||||
IFS='|' read -ra PATTERNS_ARRAY <<< "${{ env.IGNORE_PATTERNS }}"
|
||||
IGNORE_JSON="["
|
||||
|
||||
for pattern in "${PATTERNS_ARRAY[@]}"; do
|
||||
# 去除首尾空格
|
||||
pattern=$(echo "$pattern" | xargs)
|
||||
# 使用 sed 去除首尾空格,保留转义字符
|
||||
pattern=$(echo "$pattern" | sed 's/^[[:space:]]*//;s/[[:space:]]*$//')
|
||||
if [ -n "$pattern" ]; then
|
||||
IGNORE_JSON="${IGNORE_JSON}\"${pattern}\","
|
||||
if [ -z "$PROCESSED_PATTERNS" ]; then
|
||||
PROCESSED_PATTERNS="$pattern"
|
||||
else
|
||||
PROCESSED_PATTERNS="$PROCESSED_PATTERNS|$pattern"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
IGNORE_JSON="${IGNORE_JSON%,}]"
|
||||
echo "✅ 已处理 $(echo "$PROCESSED_PATTERNS" | grep -o '|' | wc -l | awk '{print $1+1}') 个忽略模式"
|
||||
|
||||
# 导出处理后的配置到 GitHub 环境变量
|
||||
echo "CHANGELOG_VERSION=$CHANGELOG_VERSION" >> $GITHUB_ENV
|
||||
@@ -203,7 +209,7 @@ jobs:
|
||||
echo "PRERELEASE_STRIP_REGEX=$STRIP_REGEX" >> $GITHUB_ENV
|
||||
echo "PRERELEASE_MATCH_REGEX=$MATCH_REGEX" >> $GITHUB_ENV
|
||||
|
||||
echo "IGNORE_PATTERNS_JSON=$IGNORE_JSON" >> $GITHUB_ENV
|
||||
echo "IGNORE_PATTERNS_PROCESSED=$PROCESSED_PATTERNS" >> $GITHUB_ENV
|
||||
|
||||
# 显示配置摘要
|
||||
echo ""
|
||||
@@ -449,13 +455,7 @@ jobs:
|
||||
declare -a COMMITS_BODY
|
||||
|
||||
# 从环境变量加载忽略模式 (转换为 bash 数组)
|
||||
IFS='|' read -ra IGNORE_PATTERNS <<< "${{ env.IGNORE_PATTERNS }}"
|
||||
|
||||
# 去除每个模式的首尾空格
|
||||
for i in "${!IGNORE_PATTERNS[@]}"; do
|
||||
IGNORE_PATTERNS[$i]=$(echo "${IGNORE_PATTERNS[$i]}" | xargs)
|
||||
done
|
||||
|
||||
IFS='|' read -ra IGNORE_PATTERNS <<< "${{ env.IGNORE_PATTERNS_PROCESSED }}"
|
||||
echo "📋 已加载 ${#IGNORE_PATTERNS[@]} 个忽略模式"
|
||||
|
||||
COMMIT_INDEX=0
|
||||
@@ -548,8 +548,8 @@ jobs:
|
||||
|
||||
echo ""
|
||||
echo "📊 提交统计:"
|
||||
echo " ✓ 有效提交: $VALID_COUNT"
|
||||
echo " ⏭️ 已跳过: $SKIPPED_COUNT"
|
||||
echo " ✅ 有效提交: $VALID_COUNT"
|
||||
echo " ⏭️ 已跳过: $SKIPPED_COUNT"
|
||||
echo " 📝 总计: $((VALID_COUNT + SKIPPED_COUNT))"
|
||||
echo ""
|
||||
|
||||
@@ -668,13 +668,15 @@ jobs:
|
||||
echo "🔄 版本 ${CHANGELOG_VERSION} 已存在,执行内容叠加..."
|
||||
|
||||
# 提取现有版本区域中的 commit hashes (用于去重)
|
||||
EXISTING_HASHES=$(awk '
|
||||
EXISTING_HASHES=$(awk -v version="${CHANGELOG_VERSION}" '
|
||||
BEGIN { in_version=0 }
|
||||
/^## :bookmark: '"${CHANGELOG_VERSION}"'$/ { in_version=1; next }
|
||||
/^## :bookmark: / && $0 ~ version"$" { in_version=1; next }
|
||||
/^## :bookmark: / && in_version { in_version=0 }
|
||||
in_version && /\(\[([0-9a-f]{7})\]/ {
|
||||
match($0, /\(\[([0-9a-f]{7})\]/, arr)
|
||||
print arr[1]
|
||||
in_version && /\(\[[0-9a-f]{7}\]/ {
|
||||
if (match($0, /\[([0-9a-f]{7})\]/)) {
|
||||
hash = substr($0, RSTART+1, RLENGTH-2)
|
||||
print hash
|
||||
}
|
||||
}
|
||||
' CHANGELOG.md | sort -u)
|
||||
|
||||
|
||||
@@ -1,5 +1,25 @@
|
||||
# CHANGELOG
|
||||
|
||||
## :bookmark: 0.0.3
|
||||
|
||||
### :pencil: What's Changed
|
||||
|
||||
- :bug: 移除默认上传`CHANGELOG.md` ([9961226](https://git.mytsl.cn/csh/actions-template/commit/99612267047e4d5c48d55888eeb0d05ba12c5da1)) by @csh
|
||||
- :recycle: 重构`changelog_and_release.yml` ([1f535e0](https://git.mytsl.cn/csh/actions-template/commit/1f535e0675efe166b5d38f0f0778f40d8663d318)) by @csh
|
||||
- :bug: 修复commit信息提取错误 ([bf6698a](https://git.mytsl.cn/csh/actions-template/commit/bf6698ab3e7f2020dcee899f6a06166b0e6a5168)) by @csh
|
||||
- 更新 CHANGELOG.md ([4ed8099](https://git.mytsl.cn/csh/actions-template/commit/4ed8099158f0f753b53a526ccba7dfc7aaad739a)) by @csh
|
||||
- :bug: fix bug ([fc76a1f](https://git.mytsl.cn/csh/actions-template/commit/fc76a1f625c4c6cb42e50cadb487b7607a8d2f0a)) by @csh
|
||||
- 更新 CHANGELOG.md [skip ci] ([7373553](https://git.mytsl.cn/csh/actions-template/commit/7373553270d20357a225aaf41334919086f7687d)) by @csh
|
||||
- :bug: fix bug ([fa21511](https://git.mytsl.cn/csh/actions-template/commit/fa21511d1ab98e415036046bc6950f8a3b322f25)) by @csh
|
||||
|
||||
### :busts_in_silhouette: Contributors
|
||||
|
||||
<a href="https://git.mytsl.cn/csh">
|
||||
<img src="https://git.mytsl.cn/csh.png" alt="csh" width="35" height="35" style="border-radius: 50%;" onerror="this.src='https://git.mytsl.cn/assets/img/avatar_default.png'" />
|
||||
</a>
|
||||
|
||||
---
|
||||
|
||||
## :bookmark: 0.0.2
|
||||
|
||||
*Released on 2025-11-02*
|
||||
|
||||
Reference in New Issue
Block a user