Skip to content

Commit a869910

Browse files
committed
feat: 将模板引擎修改为mkdocs
1 parent e420ad8 commit a869910

46 files changed

Lines changed: 793 additions & 1454 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/deploy.yml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
name: Deploy MkDocs to Custom Domain
2+
3+
on:
4+
push:
5+
branches: [ main, master ]
6+
pull_request:
7+
branches: [ main, master ]
8+
9+
permissions:
10+
contents: read
11+
pages: write
12+
id-token: write
13+
14+
concurrency:
15+
group: "pages"
16+
cancel-in-progress: false
17+
18+
jobs:
19+
build:
20+
runs-on: ubuntu-latest
21+
steps:
22+
- name: Checkout
23+
uses: actions/checkout@v4
24+
with:
25+
fetch-depth: 0
26+
27+
- name: Setup Python
28+
uses: actions/setup-python@v4
29+
with:
30+
python-version: '3.11'
31+
32+
- name: Cache dependencies
33+
uses: actions/cache@v3
34+
with:
35+
path: ~/.cache/pip
36+
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
37+
restore-keys: |
38+
${{ runner.os }}-pip-
39+
40+
- name: Install dependencies
41+
run: |
42+
python -m pip install --upgrade pip
43+
pip install -r requirements.txt
44+
45+
- name: Build MkDocs
46+
run: mkdocs build --strict
47+
48+
- name: Add CNAME file for custom domain
49+
run: echo "studygit.webtech.wiki" > ./site/CNAME
50+
51+
- name: Upload artifact
52+
uses: actions/upload-pages-artifact@v2
53+
with:
54+
path: ./site
55+
56+
deploy:
57+
environment:
58+
name: github-pages
59+
url: ${{ steps.deployment.outputs.page_url }}
60+
runs-on: ubuntu-latest
61+
needs: build
62+
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master'
63+
steps:
64+
- name: Deploy to GitHub Pages
65+
id: deployment
66+
uses: actions/deploy-pages@v2

.github/workflows/static.yml

Lines changed: 0 additions & 43 deletions
This file was deleted.

.gitignore

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# MkDocs
2+
site/
3+
4+
# Python
5+
__pycache__/
6+
*.py[cod]
7+
*$py.class
8+
*.so
9+
.Python
10+
build/
11+
develop-eggs/
12+
dist/
13+
downloads/
14+
eggs/
15+
.eggs/
16+
lib/
17+
lib64/
18+
parts/
19+
sdist/
20+
var/
21+
wheels/
22+
*.egg-info/
23+
.installed.cfg
24+
*.egg
25+
MANIFEST
26+
27+
# Virtual environments
28+
.env
29+
.venv
30+
env/
31+
venv/
32+
ENV/
33+
env.bak/
34+
venv.bak/
35+
36+
# IDE
37+
.vscode/
38+
.idea/
39+
*.swp
40+
*.swo
41+
*~
42+
43+
# OS
44+
.DS_Store
45+
.DS_Store?
46+
._*
47+
.Spotlight-V100
48+
.Trashes
49+
ehthumbs.db
50+
Thumbs.db

MIGRATION.md

Lines changed: 192 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,192 @@
1+
# Docsify 到 MkDocs 迁移指南
2+
3+
## 🎯 迁移完成 - 全新升级!
4+
5+
本项目已成功从 Docsify 迁移到 MkDocs,使用 Material for MkDocs 主题,并采用了更吸引人的标题和内容结构。
6+
7+
### 🌟 全新亮点
8+
9+
1. **更吸引人的标题**: "Git 完全指南 - 从零基础到团队协作高手"
10+
2. **自定义域名**: 部署到 `studygit.webtech.wiki`,从根路径访问
11+
3. **优化的内容结构**: 使用 emoji 和更生动的描述
12+
4. **增强的视觉效果**: 卡片悬停动画、渐变标题等
13+
14+
## 📋 迁移内容
15+
16+
### ✅ 已完成的工作
17+
18+
1. **配置文件**
19+
- ✅ 创建 `mkdocs.yml` 配置文件
20+
- ✅ 配置 Material for MkDocs 主题
21+
- ✅ 设置中文语言支持
22+
- ✅ 配置搜索、代码高亮等功能
23+
24+
2. **文档结构**
25+
- ✅ 重新组织文档目录结构 (`docs/`)
26+
- ✅ 迁移所有 Markdown 文件
27+
- ✅ 修复内部链接路径
28+
- ✅ 修复图片资源路径
29+
30+
3. **主题和样式**
31+
- ✅ 使用 Material for MkDocs 主题
32+
- ✅ 配置深色/浅色模式切换
33+
- ✅ 自定义 CSS 样式
34+
- ✅ 响应式设计
35+
36+
4. **功能特性**
37+
- ✅ 搜索功能
38+
- ✅ 代码高亮
39+
- ✅ 代码复制按钮
40+
- ✅ 导航菜单
41+
- ✅ 面包屑导航
42+
- ✅ 编辑页面链接
43+
44+
5. **自动化部署**
45+
- ✅ GitHub Actions 工作流
46+
- ✅ 自动构建和部署到 GitHub Pages
47+
- ✅ 缓存优化
48+
49+
6. **开发工具**
50+
- ✅ 本地开发脚本 (`serve.sh`)
51+
- ✅ 构建脚本 (`build.sh`)
52+
- ✅ 依赖管理 (`requirements.txt`)
53+
54+
## 🗂️ 新的目录结构
55+
56+
```
57+
.
58+
├── docs/ # 文档源文件
59+
│ ├── index.md # 首页
60+
│ ├── git/ # Git教程文章
61+
│ │ ├── note-01.md # Git基础
62+
│ │ ├── note-02.md # 常用指令
63+
│ │ ├── note-03.md # 协同开发
64+
│ │ └── note-04.md # 版本回退
65+
│ └── assets/ # 静态资源
66+
│ ├── images/ # 图片资源
67+
│ └── stylesheets/ # 自定义样式
68+
├── .github/workflows/ # GitHub Actions
69+
│ └── deploy.yml # 自动部署配置
70+
├── mkdocs.yml # MkDocs配置文件
71+
├── requirements.txt # Python依赖
72+
├── serve.sh # 本地开发脚本
73+
├── build.sh # 构建脚本
74+
└── README.md # 项目说明
75+
```
76+
77+
## 🚀 使用方法
78+
79+
### 本地开发
80+
81+
```bash
82+
# 安装依赖
83+
pip install -r requirements.txt
84+
85+
# 启动开发服务器
86+
./serve.sh
87+
# 或者
88+
mkdocs serve
89+
90+
# 访问 http://127.0.0.1:8000
91+
```
92+
93+
### 构建部署
94+
95+
```bash
96+
# 构建静态站点
97+
./build.sh
98+
# 或者
99+
mkdocs build
100+
101+
# 部署到 GitHub Pages
102+
mkdocs gh-deploy
103+
```
104+
105+
### 自动部署
106+
107+
推送到 `main``master` 分支时,GitHub Actions 会自动:
108+
1. 构建 MkDocs 站点
109+
2. 部署到 GitHub Pages
110+
111+
## 🎨 主题特性
112+
113+
### Material for MkDocs 优势
114+
115+
- 🎯 **现代化设计**: 遵循 Material Design 规范
116+
- 📱 **响应式布局**: 完美适配移动设备
117+
- 🌓 **深色模式**: 支持浅色/深色主题切换
118+
- 🔍 **强大搜索**: 内置全文搜索功能
119+
- 📝 **丰富扩展**: 支持代码高亮、数学公式、图表等
120+
-**性能优化**: 快速加载和渲染
121+
- 🛠️ **高度可定制**: 丰富的配置选项
122+
123+
### 新增功能
124+
125+
- 卡片式首页布局
126+
- 流程图支持 (Mermaid)
127+
- 代码复制按钮
128+
- 编辑页面链接
129+
- 面包屑导航
130+
- 返回顶部按钮
131+
132+
## 📊 对比分析
133+
134+
| 特性 | Docsify | MkDocs + Material |
135+
|------|---------|-------------------|
136+
| 构建方式 | 客户端渲染 | 静态站点生成 |
137+
| SEO 友好 |||
138+
| 加载速度 | 中等 | 快速 |
139+
| 离线访问 |||
140+
| 主题丰富度 | 有限 | 丰富 |
141+
| 插件生态 | 有限 | 丰富 |
142+
| 移动端体验 | 一般 | 优秀 |
143+
| 搜索功能 | 基础 | 强大 |
144+
145+
## 🔧 配置说明
146+
147+
### 主要配置项
148+
149+
- **主题**: Material for MkDocs
150+
- **语言**: 中文 (zh)
151+
- **颜色**: Indigo 主色调
152+
- **功能**: 导航、搜索、代码高亮等
153+
- **扩展**: Markdown 扩展、代码复制等
154+
155+
### 自定义样式
156+
157+
位于 `docs/assets/stylesheets/extra.css`,包含:
158+
- 卡片样式
159+
- 图片居中
160+
- 表格美化
161+
- 响应式网格
162+
163+
## 📈 后续优化建议
164+
165+
1. **内容优化**
166+
- 添加更多交互式示例
167+
- 增加视频教程链接
168+
- 完善代码示例
169+
170+
2. **功能增强**
171+
- 添加评论系统
172+
- 集成 Google Analytics
173+
- 添加 RSS 订阅
174+
175+
3. **性能优化**
176+
- 图片压缩和优化
177+
- CDN 加速
178+
- 缓存策略
179+
180+
## ✅ 迁移检查清单
181+
182+
- [x] 配置 MkDocs 和 Material 主题
183+
- [x] 迁移所有文档内容
184+
- [x] 修复内部链接和图片路径
185+
- [x] 配置 GitHub Actions 自动部署
186+
- [x] 测试本地开发环境
187+
- [x] 测试构建和部署流程
188+
- [x] 更新项目文档
189+
190+
## 🎉 迁移完成
191+
192+
恭喜!你的项目已成功从 Docsify 迁移到 MkDocs。新的文档站点具有更好的性能、SEO 友好性和用户体验。

0 commit comments

Comments
 (0)