Git 연동
GitHub 리포지토리 설정
리포지토리 생성
GitHub에서 새로운 리포지토리를 생성합니다. 리포지토리를 공개 또는 비공개로 설정할 수 있습니다.
프로젝트 파일 초기화
생성한 DocFX 프로젝트 파일을 GitHub 리포지토리에 업로드합니다. 이를 위해 명령줄에서 Git을 사용하여 파일을 커밋하고 푸시할 수 있습니다.
# 리포지토리 초기화
git init
git add .
git commit -m "Initial commit"
관리 항목 정리
# DocFX 빌드 결과물
_site/
# DotNet 빌드 결과물
bin/
obj/
# 사용자별 설정 파일
.vscode/
.idea/
*.user
*.suo
# OS별 파일
.DS_Store
Thumbs.db
# 기타 불필요한 파일
*.log
*.tmp
푸시
git remote add origin https://github.com/YOUR_USERNAME/CLib.git
git push -u origin master
DocFX 설정 및 문서 작성
GitHub Actions 를 통한 CI/CD 설정
GitHub Pages 설정
GitHub Pages 활성화
먼저, GitHub Pages를 활성화합니다.
- GitHub 리포지토리 페이지로 이동: GitHub에서 해당 리포지토리로 이동합니다.
- Settings: 상단 메뉴에서
Settings
를 클릭합니다. - Pages: 좌측 메뉴에서
Pages
를 선택합니다.4. - Source:
Source
섹션에서 배포할 브랜치를 선택합니다. 일반적으로gh-pages
브랜치를 사용합니다.Branch
:gh-pages
선택Folder
:/root
선택
- Save:
Save
버튼을 클릭하여 설정을 저장합니다.
3. GitHub Personal Access Token 설정
GitHub Pages에 배포하려면 Personal Access Token이 필요합니다.
토큰 생성:
- GitHub 사용자 설정(Settings)으로 이동합니다.
Developer settings
->Personal access tokens
로 이동합니다.Generate new token
을 클릭하고,repo
권한을 선택하여 새로운 토큰을 생성합니다.
GitHub 리포지토리로 이동:
- 리포지토리의
Settings
->Secrets and variables
->Actions
로 이동합니다. New repository secret
을 클릭합니다.Name
에GH_TOKEN
,Value
에 생성한 Personal Access Token을 입력합니다.
- 리포지토리의
GitHub Actions 설정 파일 생성
- 프로젝트의 루트 디렉토리에
.github/workflows
디렉토리를 만들고,main.yml
파일을 생성합니다.
mkdir -p .github/workflows
echo. > .github/workflows/main.yml
main.yml
파일에 다음 내용을 추가합니다.
name: Build and Deploy DocFX Documentation
on:
push:
branches:
- master
paths:
- '**.csproj'
- 'docs/**'
- 'articles/**'
- 'toc.yml'
- '*.md'
- '.github/workflows/main.yml'
- 'docfx.json'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: '8.0.x'
- name: Install DocFX
run: dotnet tool install -g docfx
- name: Build documentation
run: docfx build -o _site
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./_site
4. 파일 커밋 및 푸시
이제 모든 설정이 완료되었으므로, 파일을 커밋하고 GitHub에 푸시합니다.
git add .
git commit -m "Set up DocFX and GitHub Actions"
git push origin master
master 브랜치와 gh-pages 브랜치의 관계
설정된 워크플로우에 따라 master
브랜치에 푸시할 때마다 GitHub Actions가 자동으로 실행되어 문서를 빌드하고, 그 결과를 gh-pages
브랜치에 커밋하여 배포하게 됩니다. 이렇게 하면 master
브랜치의 소스 코드와 문서가 업데이트될 때마다 GitHub Pages에 최신 문서가 자동으로 배포됩니다.
5. 배포 확인
푸시가 완료되면 GitHub Actions가 자동으로 실행되어 DocFX 문서를 빌드하고 gh-pages
브랜치에 배포합니다. GitHub Pages 설정에서 지정한 URL을 통해 배포된 문서를 확인할 수 있습니다.
예를 들어, 리포지토리가 https://github.com/YOUR_USERNAME/CLib
일 경우, GitHub Pages URL은 https://YOUR_USERNAME.github.io/CLib/
입니다.