4. Git Page
什么是 GitHub Pages?
GitHub Pages 是 GitHub 提供的静态网站托管服务,允许用户直接从 GitHub 仓库中发布网站。
info
GitHub Pages 适用于个人博客、项目文档、静态网站等场景。
GitHub Pages 的应用场景
场景 | 说明 |
---|---|
个人博客 | 通过 Jekyll 或 Hexo 部署个人博客 |
项目文档 | 使用 Docusaurus、MkDocs 托管项目文档 |
静态网站 | 直接托管 HTML/CSS/JS 静态网站 |
团队协作 | 使用不同分支管理多个版本的站点 |
启用 GitHub Pages
1. 在 GitHub 上启用 Pages
- 进入 GitHub 仓库
- 打开 Settings > Pages
- 选择
main
分支 或gh-pages
作为站点来源 - 站点地址通常为
https://username.github.io/repository-name
2. 通过命令行创建 GitHub Pages 分支
# 创建 gh-pages 分支
git checkout --orphan gh-pages
# 提交初始内容
echo "Hello GitHub Pages" > index.html
git add index.html
git commit -m "Initial commit for GitHub Pages"
git push origin gh-pages
GitHub Pages 部署示例
- HTML
- JavaScript
<!DOCTYPE html>
<html>
<head>
<title>My GitHub Page</title>
</head>
<body>
<h1>Welcome to GitHub Pages!</h1>
</body>
</html>
document.addEventListener("DOMContentLoaded", function () {
document.body.innerHTML += "<p>GitHub Pages is Live!</p>";
});
GitHub Pages 与分支管理
GitHub Pages 支持从多个分支部署,常见的管理方式包括:
main
分支:存储源代码gh-pages
分支:存储部署的静态文件docs
文件夹:用于 Docusaurus 或 MkDocs
通过 Actions 自动部署 GitHub Pages
GitHub Actions 自动部署示例
name: Deploy GitHub Pages
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 18
- name: Install dependencies
run: npm install
- name: Build site
run: npm run build
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./build
GitHub Pages 站点回滚
# 查看历史提交
git log --oneline
# 回滚到上一个提交
git reset --hard HEAD~1
# 强制推送到远程
git push origin gh-pages --force