peaceiris/actions-gh-pages
GitHub Actions에서 정적 사이트를 GitHub Pages로 배포하는 액션
5,312+0이번 주44559TypeScript
중간맛 분석
TypeScript로 작성된 GitHub Actions 액션입니다. 여러 정적 사이트 생성기(Hugo, Gatsby, MkDocs, mdBook, Next.js, Nuxt 등)를 지원하며, 기본 GITHUB_TOKEN, SSH Key, Personal Access 세 가지 인증 방식을 제공합니다. Ubuntu, macOS, Windows 모든 환경에서 작동하고, GitHub Enterprise Server도 지원합니다. 복잡한 사전 설정 없이 publish_dir만 지정하면 배포되므로 바로 실용적입니다.
이런 레포예요
이럴 때 쓰면 좋아요
- Hugo/Gatsby/Next.js 등으로 만든 블로그나 문서 사이트를 main 브랜치 푸시 시 자동 배포
- 팀 문서나 기술 블로그를 GitHub Pages로 호스팅하며 CI/CD 파이프라인 구축
- 개인 포트폴리오 사이트를 정적 생성기로 관리하고 한 번의 커밋으로 반영
핵심 기능
여러 인증 방식 지원 (GITHUB_TOKEN, SSH Deploy Key, Personal Token)Hugo, Gatsby, Next.js, Nuxt 등 다양한 정적 사이트 생성기 호환외부 리포지토리 배포, 서브디렉토리 배포, CNAME 설정 등 고급 옵션
대안 대비 차별점
공식 GitHub Pages Action이 출시되었으나, 이 액션은 더 유연한 토큰 관리(SSH 지원), 외부 리포지토리 배포, 세밀한 배포 옵션(keep_files, exclude_assets, destination_dir 등)을 제공하며 5000+ 스타를 받은 커뮤니티 표준입니다.
준비물
- GitHub 리포지토리
- 정적 사이트 생성기 (선택사항: Hugo, Gatsby, Next.js 등)
- GitHub Actions 실행 권한
바로 시작하기
- 레포지토리 루트에
.github/workflows/gh-pages.yml파일 생성:
mkdir -p .github/workflows
- 워크플로우 파일 작성 (Hugo 예시):
name: GitHub Pages
on:
push:
branches:
- main
pull_request:
jobs:
deploy:
runs-on: ubuntu-22.04
permissions:
contents: write
steps:
- uses: actions/checkout@v4
with:
submodules: true
fetch-depth: 0
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: '0.110.0'
- name: Build
run: hugo --minify
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
-
레포지토리 Settings > Pages에서 GitHub Pages 브랜치를
gh-pages로 설정 -
변경사항을 main 브랜치에 푸시:
git add .github/workflows/gh-pages.yml
git commit -m "Add GitHub Pages deployment workflow"
git push origin main
-
GitHub Actions 탭에서 워크플로우 실행 확인
-
배포 완료 후 repository Settings > Pages에서 배포된 사이트 URL 확인
별 추이 · 7일
5,312+0 / 7일
활용성 · 따라 만들기 좋은가
따라 하기 좋음샘플 점수 46/100
- 관대한 라이선스
- 테스트 있음
- 예제 디렉토리
- 최근 활동
- AGENTS.md
- llms.txt
- 템플릿
🟢 최근 활동 있음 · 2019년 생성
AI가 README 기반으로 요약했습니다 · 원문 보기