Skip to content

md change

md change #18

Workflow file for this run

name: Save README on Branch Push
on:
push:
branches:
- "**" # 监听所有分支的推送事件
jobs:
save-readme:
runs-on: [self-hosted, linux]
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Set up environment
id: setup
run: |
# 获取当前分支名称
BRANCH_NAME=$(echo "$GITHUB_REF" | sed 's/refs\/heads\///')
echo "Current branch: $BRANCH_NAME"
# 创建目标目录
TARGET_DIR="all-branch-info/$BRANCH_NAME"
mkdir -p "$TARGET_DIR"
# 检查 README.md 是否存在
if [ -f "README.md" ]; then
# 将 README.md 复制到目标目录
cp README.md "$TARGET_DIR/README.md"
echo "README.md saved to $TARGET_DIR/README.md"
else
echo "README.md not found in branch $BRANCH_NAME"
fi
# 输出目标目录路径
echo "TARGET_DIR=$TARGET_DIR" >> $GITHUB_ENV
- name: Sync to all-branch-info branch
run: |
# 使用GitHub Token认证
REPO_URL="https://${{ github.actor }}:${{ secrets.GITHUB_TOKEN }}@github.com/$GITHUB_REPOSITORY.git"
# 尝试克隆目标分支
if git clone -b all-branch-info --single-branch "$REPO_URL" target 2>/dev/null; then
echo "成功克隆 all-branch-info 分支"
else
echo "目标分支不存在,创建新分支"
# 如果 target 目录已存在,删除它
if [ -d "target" ]; then
rm -rf target
fi
# 创建 target 目录并初始化 Git 仓库
mkdir -p target
cd target
git init
git remote add origin "$REPO_URL"
git checkout -b all-branch-info
touch .gitkeep # 创建空文件用于初始提交
git add .gitkeep
git commit -m "初始化 all-branch-info 分支"
git push origin all-branch-info
cd ..
fi
# 将 README.md 同步到 all-branch-info 分支
cp -r all-branch-info target/
cd target
git add .
git commit -m "Sync README from branch $BRANCH_NAME"
git push origin all-branch-info