name: Clear Git History and Keep Current Files on: workflow_dispatch: # Manually trigger the workflow jobs: reset-history: runs-on: ubuntu-latest steps: - name: Checkout the current repository uses: actions/checkout@v2 with: fetch-depth: 0 # Ensure that the entire history is fetched - name: Configure Git author identity run: | git config --local user.email "github-actions[bot]@users.noreply.github.com" git config --local user.name "github-actions[bot]" - name: Remove all Git history run: | # Create a new orphan branch git checkout --orphan temp-branch # Add all files to the new branch git add -A # Commit the files to the new branch git commit -m "Initial commit with current files only" # Delete the old main branch git branch -D main # Rename the new orphan branch to main git branch -m main # Force push the new main branch to the remote repository git push -f origin main - name: Clean up references run: | # Remove remote-tracking references to deleted branches (optional) git fetch origin --prune