Files
FinDataHub 11d36d1c1e fix(repo): 修正 Scripts 目录索引大小写并补齐未入库脚本
问题
- 索引中该目录记为小写 `scripts/`,工作区实为 `Scripts/`。因 core.ignorecase=true,
  本地 `git diff -- Scripts/bin/x.py` 会**静默返回空**(看似无改动),
  且在大小写敏感环境(Linux CI / Docker 挂载)会检出 `scripts/`,
  与全仓所有 `Scripts/...` 引用不匹配。
- 该目录此前 10 个脚本(check_python_version.py、perf_snapshot.py、
  install_collector_launchd.py、mysql_toggle.sh 等)从未入库,
  而 CI 第 31 行正调用 `Scripts/bin/check_python_version.py --strict` ——
  全新检出必然失败。

改动
- 索引路径统一为 `Scripts/`(工作区文件未移动,仅索引改名)。
- 补齐上述 10 个未跟踪脚本及其测试。

影响
- 修正前索引 35 条(全为小写路径),修正后 45 条。
2026-09-18 22:37:32 +08:00

58 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
set -e
VERSION_FILE="$(cd "$(dirname "$0")"/.. && pwd)/VERSION"
usage() {
echo "用法: $0 <major|minor|patch> [自定义版本号]"
echo ""
echo "示例:"
echo " $0 patch # 1.2.0 -> 1.2.1"
echo " $0 minor # 1.2.0 -> 1.3.0"
echo " $0 major # 1.2.0 -> 2.0.0"
echo " $0 custom 2.0.0 # 设置为 2.0.0"
exit 1
}
current_version=$(cat "$VERSION_FILE" | tr -d '[:space:]')
if [ -z "$1" ]; then
echo "当前版本: $current_version"
usage
fi
IFS='.' read -r major minor patch <<< "$current_version"
case "$1" in
major)
major=$((major + 1))
minor=0
patch=0
;;
minor)
minor=$((minor + 1))
patch=0
;;
patch)
patch=$((patch + 1))
;;
custom)
if [ -z "$2" ]; then
echo "请指定自定义版本号"
exit 1
fi
new_version="$2"
;;
*)
echo "未知选项: $1"
usage
;;
esac
if [ -z "$new_version" ]; then
new_version="${major}.${minor}.${patch}"
fi
echo "$new_version" > "$VERSION_FILE"
echo "版本号已更新: ${current_version} -> ${new_version}"