70、【Ubuntu】【Hugo】搭建私人博客:新建站点

【声明】本博客所有内容均为个人业余时间创作,所述技术案例均来自公开开源项目(如Github,Apache基金会),不涉及任何企业机密或未公开技术,如有侵权请联系删除

背景

上篇 blog
【Ubuntu】【Hugo】搭建私人博客:Hugo 版本对比

分析了 Extended 版本中,额外集成的 Sass/SCSS 编译功能,并对比了和 CSS 的区别,并类比了和 C语言/汇编的关系,下面继续

搭建私人博客

上篇 blog 分析了 Sass/SCSS 的编译功能,下面再分析 Hugo Extended 版本中另外一个 WebP 图像处理功能

WebP 图像处理

首先,WebP 是 Google 推出的一种新型图片格式,比传统的 JPG/PNG 体积更小,画质更好,能让网站加载更快,比如一张 JPG 图片体积是 500KB,转成 WebP 后,体积只有 200KB,肉眼看不出差别,比如在 Markdown 中写

md 复制代码
![alt text](/images/image.png)

Hugo 可以在生成网站时,会自动把 photo.jpg 转成 WebP 格式,并让支持 WebP 的浏览器优先加载,但这个功能需要图像处理引擎,比如

  • Hugo 普通版:没有图像处理引擎,不能转成 WebP
  • Hugo Extended 版 :内置 libwebp 引擎,可以自动优化和转换成 WebP 图片

这对做博客,作品集,电商展示等图片多的网站特别有用

OK,最后再总结下

  • Hugo 普通版:纯 Go 编写,无 CGO 依赖
  • Hugo Extended 版 :启用了 CGO,链接了 C/C++ 库,比如 libsass(用于将 .scss.sass 文件编译为 CSS),与 libwebp(用于图像处理,比如生成 WebP 格式)

当然,在官方发布的二进制文件中,已静态链接 libsasslibwebp,用户无需自行编译,开箱即用

OK,分析完 Hugo Standard 标准版和 Extended 版的区别,下面来创建博客站点,在终端输入

bash 复制代码
hugo new site myblog

创建测试站点,当然,可以通过 help 命令查看命令说明,比如终端输入

bash 复制代码
hugo help new site

可以看到帮助信息如下

可以看到,hugo new site [path] [flags] 命令可以在指定的目录 path 里创建一个 Hugo 网站,网站的结构完整(有 content/layouts/themes 等),但没有文章,没有主题,需要后续添加,创建成功后,可以看里面的结构

bash 复制代码
cd myblog
ls

hugo new site [path] [flags] 命令常用参数 flags 包括

  • -f toml(默认) :配置文件用 hugo.toml
  • -f yaml:配置文件用 hugo.yaml
  • -f json:配置文件用 hugo.json
  • --force:即使目标文件夹非空,也强制创建,这个谨慎使用,因为会污染网站结构

OK,Hugo 站点创建完了,接下来看下一步,配置主题

Hugo 主题有很多,官方链接 https://themes.gohugo.io/ 可以看主题 Demo,选择自己喜欢的风格

下面以经典主题 PaperMod 为例,终端输入

bash 复制代码
git init

git init 是 Git 的初始化命令,可以把当前文件夹变成一个 Git 仓库,此时可以用 Git 来跟踪,保存,管理这个项目下所有文件的变更

OK,此时 Hugo 站点下就出现了一个隐藏文件夹 .git

这个 .git 文件夹会记录

  • 所有文件的历史版本
  • 谁修改了什么(作者,时间等)
  • 分支信息,标签等

项目文件本身不会被修改,只是多了个版本控制后台,当然,一个项目只需要 git init 一次,重复运行会提示 Reinitialized existing Git repository

此时当前文件夹就可以记录历史,回滚错误和协作开发了,这是使用 Git 的第一步,也是最重要的一步(万事开头难,好的开始是成功的一半!)


OK,本篇先到这里,如有疑问,欢迎评论区留言讨论,祝各位功力大涨,技术更上一层楼!!!更多内容见下篇 blog
【Ubuntu】【Hugo】搭建私人博客:添加主题

相关推荐
ltl3 小时前
存储性能建模:IOPS、吞吐与延迟
linux
九硕智慧建筑一体化厂家3 小时前
数字化管控落地,直流照明构筑安全照明体系
运维·人工智能·笔记·安全·智慧城市
刘某的Cloud5 小时前
ceph osd 导入导出 rbd volume 卷
linux·运维·ceph·volume
酸菜。7 小时前
dw_axi_dmac总结
linux
神奇霸王龙7 小时前
Agent 准入门控屠夫:5 旗舰 4 维度评估
linux·运维·数据库·ai·ai作画·agent·ai编程
cfm_29147 小时前
基于Binlog实现不停机数据库平滑迁移技术
运维·数据库·架构
迪康Defender8 小时前
AI 重构终端安全运营:智能分析中枢 AI Insight 模块架构与落地场景深度解析
运维·网络·人工智能·其他·安全·重构·架构
HiDev_9 小时前
【非标自动化】2、认识元器件(固态继电器)
运维·自动化
明达智控技术9 小时前
国产 PLC 落地立库自动化,MC5000边缘智能控制器破局
运维·自动化
小绫网络安全10 小时前
Kali Linux渗透测试入门教程:从零搭建到实战攻防
linux·运维·服务器