name: Sync to Hugging Face Space on: push: branches: - main workflow_dispatch: jobs: sync-to-space: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 with: fetch-depth: 1 # Shallow clone to avoid large files in history lfs: false # Don't fetch LFS files since we don't use them - name: Push to Hugging Face Space env: HF_TOKEN: ${{ secrets.HF_TOKEN }} run: | # Fail loudly and show each command set -euxo pipefail # Configure git git config --global user.email "actions@github.com" git config --global user.name "GitHub Actions" git config --global credential.helper "" export GIT_TERMINAL_PROMPT=0 echo "Current branch:" git branch --show-current || true echo "Git remotes:" git remote -v # Add/replace remote with token auth (note 'user' here) git remote remove hf 2>/dev/null || true git remote add hf "https://user:${HF_TOKEN}@huggingface.co/spaces/samir72/Multi-Agent-Research-Paper-Analysis-System" echo "Testing authentication with git ls-remote..." git ls-remote hf echo "Creating fresh orphan branch without history..." # Create a new branch with only current state (no history with large files) git checkout --orphan temp-clean-branch git add -A git commit -m "Clean sync from GitHub - no large files in history" echo "Force pushing clean branch to HF Space..." git push --force hf temp-clean-branch:main