1
0
mirror of https://github.com/sendevia/website.git synced 2026-03-05 23:32:45 +08:00
Files
website/scripts/update-version.sh

52 lines
1.2 KiB
Bash

#!/bin/bash
set -e
# 远程仓库配置
REMOTE="${1:-origin}"
BRANCH="${2:-master}"
echo "🚀 开始版本更新流程..."
echo " 远程: ${REMOTE}/${BRANCH}"
echo ""
# 获取当前提交数
COMMIT_COUNT=$(git rev-list --count HEAD)
# 计算最终提交数
NEXT_COMMIT_COUNT=$((COMMIT_COUNT + 1))
# 获取当前日期 YY.M.D
YEAR=$(date +%y)
MONTH=$(date +%-m)
DAY=$(date +%-d)
NEW_VERSION="${YEAR}.${MONTH}.${DAY}(${NEXT_COMMIT_COUNT})"
echo "📝 更新版本号..."
# 使用 sed 更新 package.json 中的版本号
# 匹配 "version": "..." 模式
sed -i "s/\"version\": \".*\"/\"version\": \"${NEW_VERSION}\"/" package.json
echo " ✓ 版本已更新为: ${NEW_VERSION}"
# Git 操作
echo "📦 提交更改..."
git add package.json
git commit -m "chore(package): update to version ${NEW_VERSION}"
echo "✓ 已提交: chore(package): update to version ${NEW_VERSION}"
echo "🏷️ 创建标签..."
git tag "${NEW_VERSION}"
echo "✓ 已创建标签: ${NEW_VERSION}"
echo "🌐 推送更改..."
git push "${REMOTE}" "${BRANCH}"
echo "✓ 已推送提交到 ${REMOTE}/${BRANCH}"
echo "🌐 推送标签..."
git push "${REMOTE}" "${NEW_VERSION}"
echo "✓ 已推送标签: ${NEW_VERSION}"
echo "✅ 版本更新完成!"
echo "新版本: ${NEW_VERSION}"