Initial commit for new_main

This commit is contained in:
Your Name
2025-10-25 02:23:23 +00:00
commit df3f76a889
4 changed files with 70320 additions and 0 deletions

58
.github/workflows/cleanup.yaml vendored Normal file
View File

@@ -0,0 +1,58 @@
name: Cleanup Old Commits
on:
schedule:
- cron: '23 2 * * *' # 每天凌晨执行一次
workflow_dispatch: # 允许手动触发
jobs:
clean-history:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v2
with:
fetch-depth: 0 # 完整拉取提交历史
- name: Set up Git user identity
run: |
git config --local user.name "Your Name"
git config --local user.email "your.email@example.com"
- name: Verify current branch
run: |
CURRENT_BRANCH=$(git branch --show-current)
if [ "$CURRENT_BRANCH" != "main" ]; then
echo "当前分支不是 main停止执行。"
exit 1
fi
- name: Create a new branch with an empty commit
run: |
git checkout --orphan new_main # 创建一个新的孤立分支
git commit --allow-empty -m "Initial commit for new_main" # 创建一个空的初始提交
echo "新分支 new_main 已创建"
- name: Cherry-pick the last three commits
run: |
for commit in $(git rev-list -n 3 main | tac); do
echo "正在 cherry-pick 提交: $commit"
git cherry-pick $commit || {
echo "冲突发生,尝试处理冲突提交: $commit"
if git diff-index --quiet HEAD --; then
echo "没有变化,直接跳过提交: $commit"
git cherry-pick --skip
else
git cherry-pick --continue || git cherry-pick --skip
fi
}
done
- name: Force push the new branch as main
run: |
git branch -M main # 将当前分支重命名为 main
git push --force origin main # 强制推送到远程仓库,覆盖原有的 main 分支
- name: Notify completion
run: echo "历史清理操作已完成,只保留最近三次提交。"