actions-gh-pages is a GitHub Action that deploys static files to GitHub Pages.
The action solves the problem of publishing static site output to GitHub Pages by automating deployment within GitHub Actions workflows. It works by taking a specified directory of built files and pushing them to a designated branch, typically gh-pages. The tool requires minimal setup when using the automatically-provided GITHUB_TOKEN secret, eliminating the need for manual credential configuration in most cases. It supports three authentication methods: the built-in GITHUB_TOKEN for immediate use, deploy keys for SSH-based access, and personal access tokens for HTTPS access, each with different setup requirements.
The action suits developers building static sites with generators like Hugo, Gatsby, MkDocs, mdBook, Next.js, Nuxt, and others who want to automate publishing. It works across all major runner platforms including Ubuntu, macOS, and Windows, and supports GitHub Enterprise Server. Developers should be aware that first-time deployments with GITHUB_TOKEN require manual branch selection in repository settings, though subsequent deployments work automatically. The README notes that GitHub now provides an official GitHub Pages Action and recommends reviewing it first before choosing this alternative.
The project maintains active engagement with issues and pull requests, addressing platform-specific challenges such as ongoing work to fully support Windows runners with deploy keys. Development activity shows responsiveness to user-reported problems and incremental improvements to platform compatibility across different runner environments.