hugo
1.0、参考
1.1、hugo简介
是什么 ?:an open-source static website generator which is optimized for speed, ease of use, and configurability.
开发语言:golang
官方主页:
源码仓库:https://github.com/gohugoio/hugo
1.2、通过包管理器安装hugo
操作系统包管理器安装命令
Windowsscoopscoop install hugo
WindowsChocolateychoco install -y hugo
macOSHomeBrewbrew install hugo
GNU/LinuxHomeBrewbrew install hugo
aptsudo apt-get install -y hugo
CentOSyum不支持
dnfsudo dnf install -y hugo
openSUSEzyppersudo zypper install -y hugo
Alpine Linuxapksudo apk add hugo

Arch Linux

ArcoLinux

Manjaro Linux

pacmansudo pacman -Syyu --noconfirm
sudo pacman -S    --noconfirm hugo
Gentoo LinuxPortagesudo emerge hugo
1.3、通过下载预编译好的二进制压缩包安装hugo

step1、安装依赖

所有时Terminal + Shell
下载时cURL
解压时tar + gzip
运行时
  • glibc ( libc.solibpthread.sold-linux-x86-64.so )

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
1.4、通过go get编译源码安装hugo

step1、安装依赖

所有时Terminal + Shell
下载时git
编译时GoToolchain
运行时
  • glibc ( libc.solibpthread.sold-linux-x86-64.so )

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/
1.4、hugo命令

hugo命令的使用方式为:

hugo [COMMAND] [option]...
1.4.1、hugo --help

查看hugo的使用帮助。

1.4.2、hugo help COMMAND

查看COMMAND的使用帮助。

1.4.3、hugo env

查看hugo相关的环境信息。

1.4.4、hugo new site <SITE_DIR>

创建一个新的静态网站。

生成项目的文件和目录结构如下:

文件和目录的作用:

config.toml项目配置文件
content您写的文章放在这里
themes皮肤存放目录

注意:

hugo生成的项目默认没有带任何的皮肤(theme),创建了项目之后, 首要的任务是在皮肤列表中挑选一个心仪的theme。 比如你觉得Hyde这个皮肤不错,找到它的GitHub地址,把代码下载到themes目录:

git -C themes clone https://github.com/spf13/hyde.git

config.toml中加入如下的配置:

theme = "hyde"
1.4.5、hugo new [SECTION_NAME/]<FILE_NAME>.<FORMAT>

生成一篇新文章。

SECTION_NAME不是必需的。SECTION_NAME就是为了分类。

这个命令执行后,会在content目录下生成一个[SECTION_NAME/]<FILE_NAME>.<FORMAT>文件。

为什么使用这个命令来创建文件呢?这是因为这命令生成的文件会有一些额外的信息,比如标签、创建时间等。

我们直接用编辑器编辑此文件:

1.4.6、hugo server [option]...

启动hugo用于本地开发的HTTP服务器。

常用的option有如下:

--port设置监听的端口号,默认是1313
--log打开日志
--debug输出debug级别的日志
--verbose输出verbose级别的日志

示例:

在浏览器中通过http://localhost:1313进行预览。这样我们在本地编写的时候,在部署到服务器之前,都可以在本地进行预览。没有问题之后再进行部署。

1.4.7、hugo [option]...

在部署之前,必须将Markdown转换成HTML等静态资源文件。

hugo之后不带任何COMMAND就表示要要生成静态网页。

执行这个命令后,会发现多了一个public文件夹:

1.4.8、部署

等开发完成后,我们为了让别人访问到我们的网站,就需要部署到服务器上。

静态博客可以被方便的部署在GitHub PagesGitee Pages上。