是什么 ? | : | an open-source static website generator which is optimized for speed, ease of use, and configurability. |
开发语言 | : | golang |
官方主页 | : | |
源码仓库 | : | https://github.com/gohugoio/hugo |
操作系统 | 包管理器 | 安装命令 |
---|---|---|
Windows | scoop | scoop install hugo |
Windows | Chocolatey | choco install -y hugo |
macOS | HomeBrew | brew install hugo |
GNU/Linux | HomeBrew | brew install hugo |
apt | sudo apt-get install -y hugo | |
CentOS | yum | 不支持 |
dnf | sudo dnf install -y hugo | |
openSUSE | zypper | sudo zypper install -y hugo |
Alpine Linux | apk | sudo apk add hugo |
pacman | sudo pacman -Syyu --noconfirm | |
Gentoo Linux | Portage | sudo emerge hugo |
step1、安装依赖
所有时 | Terminal + Shell |
下载时 | cURL |
解压时 | tar + gzip |
运行时 |
|
step2、使用curl命令下载编译好的二进制压缩包 ()
curl -LO https://github.com/gohugoio/hugo/releases/download/v0.56.3/hugo_0.56.3_Linux-64bit.tar.gz
step3、使用tar解压压缩包到/usr/local/bin
目录下
tar vxf hugo_0.56.3_Linux-64bit.tar.gz -C /usr/local/bin
step1、安装依赖
所有时 | Terminal + Shell |
下载时 | git |
编译时 | GoToolchain |
运行时 |
|
step2、设置GOPATH
等环境变量
export GOPATH=~/go/hugo
export GO111MODULE=auto
export GOPROXY=https://goproxy.io
step3、使用go get下载hugo
源码并编译
go get -v github.com/spf13/hugo
step4、将$GOPATH/bin/hugo
安装到/usr/local/bin/
目录中
sudo install -o $(whoami) -m 755 $GOPATH/bin/hugo /usr/local/bin/
hugo
命令的使用方式为:
hugo [COMMAND] [option]...
查看hugo
的使用帮助。
查看COMMAND
的使用帮助。
查看hugo
相关的环境信息。
创建一个新的静态网站。
生成项目的文件和目录结构如下:
文件和目录的作用:
config.toml | 项目配置文件 |
content | 您写的文章放在这里 |
themes | 皮肤存放目录 |
注意:
hugo
生成的项目默认没有带任何的皮肤(theme
),创建了项目之后, 首要的任务是在皮肤列表中挑选一个心仪的theme
。 比如你觉得Hyde
这个皮肤不错,找到它的GitHub地址,把代码下载到themes
目录:
git -C themes clone https://github.com/spf13/hyde.git
在config.toml
中加入如下的配置:
theme = "hyde"
生成一篇新文章。
SECTION_NAME
不是必需的。SECTION_NAME
就是为了分类。
这个命令执行后,会在content
目录下生成一个[SECTION_NAME/]<FILE_NAME>.<FORMAT>
文件。
为什么使用这个命令来创建文件呢?这是因为这命令生成的文件会有一些额外的信息,比如标签、创建时间等。
我们直接用编辑器编辑此文件:
启动hugo
用于本地开发的HTTP
服务器。
常用的option
有如下:
--port | 设置监听的端口号,默认是1313 |
--log | 打开日志 |
--debug | 输出debug 级别的日志 |
--verbose | 输出verbose 级别的日志 |
示例:
在浏览器中通过http://localhost:1313
进行预览。这样我们在本地编写的时候,在部署到服务器之前,都可以在本地进行预览。没有问题之后再进行部署。
在部署之前,必须将Markdown
转换成HTML
等静态资源文件。
hugo
之后不带任何COMMAND
就表示要要生成静态网页。
执行这个命令后,会发现多了一个public
文件夹:
等开发完成后,我们为了让别人访问到我们的网站,就需要部署到服务器上。
静态博客
可以被方便的部署在GitHub Pages、Gitee Pages上。