Skip to content

Commit da2a77d

Browse files
committed
update: post use-hugo
1 parent 44b03f4 commit da2a77d

File tree

1 file changed

+21
-19
lines changed

1 file changed

+21
-19
lines changed

content/posts/use-hugo/index.md

+21-19
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: "Made in goHugo | 使用hugo框架搭建个人博客"
2+
title: "goHugo | 使用hugo框架搭建个人博客"
33
date: 2023-09-17T15:36:21+08:00
44
slug: use-hugo
55
tags: [web]
@@ -11,7 +11,7 @@ tags: [web]
1111
---
1212

1313
[Hugo](https://gohugo.io/)是一个优秀的静态网页生成框架,适合博客或小型文档之类的没有动态数据交互的网页应用。
14-
一直打算翻新博客,尝试了纯粹三大件、也试过一些其他框架,但因为水平太次最终还是回来投奔Hugo。
14+
一直打算翻新博客,尝试过朴素三大件、也试过一些其他框架,但因为水平太次最终还是回来投奔Hugo。本篇介绍hugo的基本结构及用法
1515

1616
## 安装Hugo
1717

@@ -22,9 +22,9 @@ tags: [web]
2222

2323
Hugo分为standard和extended两个版本。区别是extended版本会把图片处理成WebP格式的,还有自带的sass处理器。两者的占用相差也不大,一般情况都选择extended即可。
2424

25-
## 框架结构
25+
## 目录结构
2626

27-
完成上一步安装後,选择合适的位置,输入:
27+
完成安装後,选择合适的路径,输入:
2828

2929
```shell
3030
hugo new site my-site
@@ -48,7 +48,7 @@ my-site/
4848
└── hugo.toml <-- 配置文件,网站的全局配置
4949
```
5050

51-
现在可以启动hugo自带的网页服务器,访问默认地址`127.0.0.1:1313`观察网页效果:
51+
现在可以启动hugo自带的网页服务器,方便在本地调试网站。访问默认地址`127.0.0.1:1313`观察网页效果:
5252

5353
```shell
5454
hugo serve
@@ -75,12 +75,13 @@ echo "theme = 'stack'" >> hugo.toml
7575

7676
## 内容管理
7777

78-
Hugo的所有内容都放在`content/`之中管理,根据内容的分层结构处理路由等事务。\
79-
先来介绍一个重要概念,**Page bundles**。page bundle分两种,其一是**leaf bundle**,另一是**branch bundle**
78+
Hugo的所有内容都放在`content/`之中管理,根据内容的分层结构处理路由等事务。
79+
先来介绍一个重要概念,**Page bundles**
80+
分两种,**leaf bundle****branch bundle**
8081

8182
### leaf bundle
8283

83-
把内容及其配套资源统放到一个文件夹里,其中内涵一个`index.md`如此形成一个leaf bundle。譬如这里有一个about/文件夹,内涵一篇文章和一张图片:
84+
把内容及其所需的资源统放到一个文件夹里,其中包含一个`index.md`形成一个leaf bundle。譬如一个about/文件夹,其中有一篇文章和一张图片。
8485

8586
```txt
8687
content/
@@ -90,11 +91,11 @@ content/
9091
9192
```
9293

93-
顾名思义,leaf喻为植物形态的末端,不再有后继,是内容管理的基本单元。
94+
leaf喻为植物形态的末端,不再有后继,是内容管理的基本单元。
9495

9596
### branch bundle
9697

97-
而branch bundle则更高一层,可容纳后继的文件夹,用作目录或其他功能页面:
98+
而branch bundle则更高一层,可用作目录,包含任意数量的子文件夹,其中包含一个`_index.md`
9899

99100
```txt
100101
content/
@@ -107,15 +108,14 @@ content/
107108
└── _index.md
108109
```
109110

110-
branch/下的`_index.md`和所有内涵的文件夹是一个branch、content/同理,所以这里有两个branch bundles。
111+
这里面有几个branch bundle?\
112+
content/作为顶层文件夹,肯定是一个brach bundle,其中的branch/有_index.md,所以答案是两个。
111113

112-
> ⚠️ content/作为顶层,自然永远都是brach bundle。
113-
114-
page bundle组织彼此相关联的内容,避免什么资源文件都往`static/``assets/`放。
114+
page bundle组织彼此相关联的内容,避免什么东西都往`static/``assets/`这两个公共资源文件夹里放。
115115

116116
## 配置文件
117117

118-
Hugo之前默认生成一个全局配置文件`hugo.toml`
118+
Hugo默认在新的项目生成一个全局配置文件`hugo.toml`
119119

120120
```toml
121121
# hugo.toml
@@ -125,19 +125,20 @@ title = 'My New Hugo Site'
125125
theme = 'stack'
126126
```
127127

128-
`title`随意修改,这是浏览器标签页的标题;\
129-
`baseURL`是部署地址,我接下来使用Github Action部署网站,所以我改成"https://proxyerium.github.io"。
128+
`title`是浏览器标签页的标题,随意修改;\
129+
`baseURL`定义网站的基本url,作为所有相对链接的绝对参照点,乱填可能会导致资源无法正确定位。
130+
我使用Github Action部署网站,所以写"https://proxyerium.github.io/",**注意尾部一定要有斜杠**。
130131

131132
## 部署网站
132133

133-
部署网站有[许多方法](https://gohugo.io/hosting-and-deployment/)我还没尝试过Github Action以外的方法,暂且只写这一种 :P
134+
部署网站有许多方法,参考[官方文档](https://gohugo.io/hosting-and-deployment/)我还没尝试过Github Action以外的方法,暂且只写这一种 :P
134135

135136
### Github Actions
136137

137138
1. 远程仓库,找到Settings -> Pages -> Source,改成"Github Actions"。
138139
2. 本地仓库,创建工作流脚本`.github/workflows/hugo.yaml`,用官方提供的[工作流模板](https://gohugo.io/hosting-and-deployment/hosting-on-github/#procedure)即可,唯独留心里面的`HUGO_VERSION`对应自己正在使用的版本,免得兼容问题。
139140
3. 整理好所有内容後推送到远程仓库。
140-
4. 找到远程仓库顶部Actions标签页,观赏工作流程,结束後便能访问已部署的网站,大功告成!
141+
4. 找到远程仓库顶部Actions标签页,观赏action流程,完成後便能访问部署好的网站,大功告成!
141142

142143
## 挖坑
143144

@@ -147,6 +148,7 @@ theme = 'stack'
147148

148149
|||
149150
|:-:|:--|
151+
| 2024-11-22 | 略微修改,修正含糊有误的文段 |
150152
| 2024-10-13 | 重写 |
151153
| 2023-02-20 | 略微修改 |
152154
| 2023-09-27 | 略微修改 |

0 commit comments

Comments
 (0)