Clear Git History and Keep Current Files #2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 |