diff --git a/.gitea/workflows/cd.yaml b/.gitea/workflows/cd.yaml index 611b809..04da7bd 100644 --- a/.gitea/workflows/cd.yaml +++ b/.gitea/workflows/cd.yaml @@ -45,17 +45,24 @@ jobs: - name: 更新或clone项目 shell: powershell run: | - if (-not (Test-Path -Path "${{ env.DESTINATION }}\.git")) { - # 目录不存在,执行 git clone - git clone "${{ env.REPOSITORY_URL }}" "${{ env.DESTINATION }}" - } - else { - # 目录存在,更新远程地址并拉取 - Set-Location "${{ env.DESTINATION }}" - # 检查并更新远程地址 + $dest = "${{ env.DESTINATION }}" + + # 检查是否是有效的 Git 仓库 + if (Test-Path -Path "$dest\.git") { + # 是有效的 Git 仓库,更新远程地址并拉取 + Set-Location $dest git remote set-url origin "${{ env.REPOSITORY_URL }}" git pull } + else { + # 不是有效的 Git 仓库,删除目录(如果存在)然后重新克隆 + if (Test-Path -Path $dest) { + Write-Host "Removing existing directory: $dest" + Remove-Item -Path $dest -Recurse -Force + } + # 克隆新仓库 + git clone "${{ env.REPOSITORY_URL }}" $dest + } - name: Set up Python uses: actions/setup-python@v3 with: