🐛 修`update_stats_badge.yml`,还没跑起来
Hello from ImmortalWrt / say-hello (push) Successful in 0s Details
Update Stats Badege / update-stats (push) Failing after 0s Details

This commit is contained in:
csh 2025-11-02 21:07:01 +08:00
parent 5b3629fb73
commit b616573bfd
1 changed files with 41 additions and 4 deletions

View File

@ -220,12 +220,24 @@ jobs:
cd "${{ env.REPO_DIR }}" cd "${{ env.REPO_DIR }}"
# 创建孤立分支 # 创建孤立分支orphan branch
# 📝 说明:孤立分支与主分支没有共同的提交历史,适合存储独立的数据
git checkout --orphan ${{ env.BADGE_BRANCH }} git checkout --orphan ${{ env.BADGE_BRANCH }}
# 清空所有文件 # 🧹 清空所有文件(但保留 .git 目录)
# ❓ 为什么要删除?
# - stats 分支是独立的数据存储分支,不需要主分支的代码文件
# - 只需要存储徽章 JSON 文件和统计报告
# - 保持分支干净,避免混淆
#
# ✅ 能否复用仓库?
# - 可以!.git 目录包含所有分支的完整信息
# - 切换到主分支时,主分支的文件会恢复
# - 各分支独立,互不影响
git rm -rf . 2>/dev/null || true git rm -rf . 2>/dev/null || true
rm -rf * .* 2>/dev/null || true
# 安全地删除剩余文件(排除 .git 和 .gitea
find . -maxdepth 1 ! -name '.' ! -name '..' ! -name '.git' ! -name '.gitea' -exec rm -rf {} + 2>/dev/null || true
# 创建初始 README # 创建初始 README
cat > README.md << 'EOF' cat > README.md << 'EOF'
@ -275,8 +287,11 @@ jobs:
echo "======================================" echo "======================================"
echo "" echo ""
# 返回主分支 # 🔴 重要:返回主分支,后续统计需要在主分支进行
echo "🔄 切换回主分支: ${{ github.ref_name }}"
git checkout ${{ github.ref_name }} git checkout ${{ github.ref_name }}
echo "✓ 已切换回主分支"
echo ""
- name: 🔍 检查必需工具 - name: 🔍 检查必需工具
id: check_deps id: check_deps
@ -328,6 +343,17 @@ jobs:
cd "${{ env.REPO_DIR }}" cd "${{ env.REPO_DIR }}"
# 🔴 重要:确保在主分支进行统计(不要统计 stats 分支)
echo "🔍 确认当前分支..."
CURRENT_BRANCH=$(git branch --show-current)
if [ "$CURRENT_BRANCH" != "${{ github.ref_name }}" ]; then
echo "⚠️ 当前在分支: $CURRENT_BRANCH切换到主分支: ${{ github.ref_name }}"
git checkout ${{ github.ref_name }}
else
echo "✓ 已在主分支: $CURRENT_BRANCH"
fi
echo ""
# 构建排除参数 # 构建排除参数
EXCLUDE_PARAMS="" EXCLUDE_PARAMS=""
IFS=',' read -ra EXCLUDES <<< "${{ env.EXCLUDE_DIRS }}" IFS=',' read -ra EXCLUDES <<< "${{ env.EXCLUDE_DIRS }}"
@ -370,6 +396,17 @@ jobs:
cd "${{ env.REPO_DIR }}" cd "${{ env.REPO_DIR }}"
# 🔴 重要:确保在主分支进行统计
echo "🔍 确认当前分支..."
CURRENT_BRANCH=$(git branch --show-current)
if [ "$CURRENT_BRANCH" != "${{ github.ref_name }}" ]; then
echo "⚠️ 当前在分支: $CURRENT_BRANCH切换到主分支: ${{ github.ref_name }}"
git checkout ${{ github.ref_name }}
else
echo "✓ 已在主分支: $CURRENT_BRANCH"
fi
echo ""
# 创建临时目录 # 创建临时目录
mkdir -p /tmp/lang_stats mkdir -p /tmp/lang_stats