ActionDemo/.gitea/workflows/AutoGenerateREADME.yaml
2025-04-10 15:37:11 +08:00

57 lines
2.1 KiB
YAML

name: Create README with Commit History
on:
push:
branches:
- main # 可根据实际情况修改为你的默认分支,如 master
jobs:
create-readme:
runs-on: ubuntu-latest
if: "!contains(github.event.head_commit.message, 'Create README with commit history')"
steps:
- name: Checkout code from Gitea
env:
GITEA_TOKEN: ${{ secrets.AUTOGENERATE }}
GITEA_REPO_URL: ${{ github.server_url }}/${{ github.repository }}
CLEAN_REPO_URL: ${{ github.server_url }}/${{ github.repository }}
run: |
# 去除多余的 https://
CLEAN_REPO_URL="${CLEAN_REPO_URL#https://}"
git clone "https://${GITEA_TOKEN}@${CLEAN_REPO_URL}" .
- name: Delete existing README if exists
run: |
if [ -f README.md ]; then
rm README.md
fi
- name: Get commit history and write to README
run: |
# 获取仓库名称
REPO_NAME=$(basename "$GITHUB_REPOSITORY" .git)
# 写入仓库名称到 README
echo "# $REPO_NAME" > README.md
# 获取所有提交记录并追加到 README
git log --pretty=format:"- %h %an %ad %s" --date=short >> README.md
# 显示 README.md 的内容(可选,用于调试)
cat README.md
- name: Commit and push changes
env:
GITEA_TOKEN: ${{ secrets.AUTOGENERATE }}
GITEA_REPO_URL: ${{ github.server_url }}/${{ github.repository }}
CLEAN_REPO_URL: ${{ github.server_url }}/${{ github.repository }}
run: |
# 去除多余的 https://
CLEAN_REPO_URL="${CLEAN_REPO_URL#https://}"
git config --local user.email "liyepan@linuxacme.com"
git config --local user.name "iorebuild"
git add README.md
if git diff --staged --quiet; then
echo "No changes to commit."
else
git commit -m "Create README with commit history"
git push "https://${GITEA_TOKEN}@${CLEAN_REPO_URL}"
fi