feat: 完善版本追踪

This commit is contained in:
caoqianming 2025-03-31 11:10:47 +08:00
parent cb1b2dfae6
commit 853c28976d
3 changed files with 83 additions and 1 deletions

13
changelog.md Normal file
View File

@ -0,0 +1,13 @@
## 2.6.2025033109
- feat: 功能新增
- 建立及完善批次号数据链 [caoqianming]
- 添加子工序以完善同一日志的记录 [caoqianming]
- wpr产品追溯上游链 [caoqianming]
- 工艺路线routepack支持子图逻辑及任务量算法 [caoqianming]
- 出入库及任务编号非必填及自动生成逻辑 [caoqianming]
- fix: 问题修复
- 车间库存检索bug [caoqianming]
- wpr产品创建oinfo的bug [caoqianming]
- 其他已知的bug [caoqianming]
## 2.6.2025031919
- 初始版本

View File

@ -33,7 +33,7 @@ sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
ALLOWED_HOSTS = ['*']
SYS_NAME = '星途工厂综合管理系统'
SYS_VERSION = '2.3.0'
SYS_VERSION = '2.6.2025033109'
X_FRAME_OPTIONS = 'SAMEORIGIN'
# Application definition

69
update_changelog.sh Normal file
View File

@ -0,0 +1,69 @@
#!/bin/bash
# 设置默认版本号 (格式: 2.6.YYYYMMDDHH)
DEFAULT_VERSION="2.6.$(date '+%Y%m%d%H')"
# 获取参数 (起始tag)
TARGET_TAG="$1"
# 获取最后一个tag
LAST_TAG=$(git describe --abbrev=0 --tags 2>/dev/null)
# 确定版本范围
if [ -z "$TARGET_TAG" ]; then
if [ -z "$LAST_TAG" ]; then
echo "没有找到任何tag将从头开始生成"
RANGE=""
else
RANGE="$LAST_TAG..HEAD"
fi
else
RANGE="$TARGET_TAG..HEAD"
fi
# 初始化临时文件
TEMP_FILE=$(mktemp)
# 生成变更日志头
echo "## $DEFAULT_VERSION" > "$TEMP_FILE"
echo >> "$TEMP_FILE"
# 按类型分类提交记录
process_commits() {
local type="$1"
local header="$2"
local pattern="$3"
# 查找匹配类型的提交
git log $RANGE --no-merges --pretty=format:"%s | %an | %ad" --date=short | grep -E "$pattern" | while read -r line; do
COMMIT_MSG=$(echo "$line" | cut -d'|' -f1 | sed 's/^ *//;s/ *$//')
AUTHOR=$(echo "$line" | cut -d'|' -f2 | sed 's/^ *//;s/ *$//')
DATE=$(echo "$line" | cut -d'|' -f3 | sed 's/^ *//;s/ *$//')
# 如果是第一次找到该类型,先打印标题
if [ $printed_header -eq 0 ]; then
echo "- $header" >> "$TEMP_FILE"
printed_header=1
fi
# 打印提交信息(移除类型前缀)
CLEAN_MSG=$(echo "$COMMIT_MSG" | sed -E "s/^$type:\s*//i")
echo " - $CLEAN_MSG [$AUTHOR]" >> "$TEMP_FILE"
done
}
# 处理各类型提交(按优先级排序)
printed_header=0; process_commits "feat" "feat: 新增功能" "^[fF]eat"
printed_header=0; process_commits "fix" "fix: 问题修复" "^[fF]ix"
printed_header=0; process_commits "" "other: 其他变更" "^((?![fF]eat|[fF]ix).)*$"
# 合并到原文件
if [ -f changelog.md ]; then
cat "$TEMP_FILE" changelog.md > changelog.md.tmp && mv changelog.md.tmp changelog.md
rm "$TEMP_FILE"
else
mv "$TEMP_FILE" changelog.md
fi
echo "变更日志已更新到 changelog.md"
echo "当前版本号: $DEFAULT_VERSION (请手动修改)"