name: Mirror to GitHub on: push: branches: - main jobs: mirror: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v3 with: fetch-depth: 0 # Full history needed for mirroring - name: Setup Git run: | git config --global user.name "the-luap" git config --global user.email "paul-nothaft@hotmail.de" - name: Create filtered branch run: | # Create a new branch for GitHub git checkout --orphan -b github-mirror # Remove sensitive files/directories # Example: Remove .env files, private configs, etc. git rm -r --cached .env* || true git rm -r --cached backend/.env* || true git rm -r --cached frontend/.env* || true git rm -r --cached docker-compose.prod.yml || true git rm -r --cached .claudedocs/ || true git rm -r --cached backend/data/ || true git rm -r --cached backend/storage/ || true git rm -r --cached .gitea/ || true git rm -r --cached scripts/install-gitea-runner.sh || true git rm -r --cached .drone* || true git rm -r --cached .github-mirror-exclude || true git rm -r --cached .gitattributes-github || true git rm -r --cached photo-sharing-prd.md || true git rm -r --cached CLAUDE.md || true git rm -r --cached PRODUCTION_DEPLOYMENT_GUIDE.md || true git rm -r --cached logs/ || true # Commit the changes git commit -m "Remove sensitive files for GitHub mirror" || true - name: Push to GitHub env: GITHUBTOKEN: ${{ secrets.GITHUBTOKEN }} run: | # Add GitHub remote git remote add github https://x-access-token:${GITHUBTOKEN}@github.com/the-luap/picpeak.git # Force push the filtered branch to GitHub main git push github github-mirror:main --force