Note | 用Hugo搭建博客并部署到GitHub Pages
用Hugo搭建博客并部署到GitHub Pages
之前担心过现有博客平台(如博客园,CSDN)突然倒闭了,博文特别是插图来不及备份;也考虑过自建博客可以更随意,因此有了自建博客的打算。花了两天时间,走了一些弯路,有一些经验总结:
做事情一定要搞清楚需求,掂量自己的实力。原本我只是想做一个备份,那么本地写好markdown,存好插图,再同步到博客园就行了,没有必要费力建博客搭网站。虽然Hexo和Hugo都有很多模板供选择,但如果要彻底改造成自己喜欢的样子,还得好好研究琢磨。对于没有任何HTML经验的我,这种工作量远远超过了我的预期。
不要沦为工具的努力。就像斟酌linux还是windows好一样,纠结自建博客和使用博客平台对我来说没太大意义。因为我的目的还是写作,博客也是服务于写作的。既然自建博客的收益并不能完全覆盖我的需求(可能还要支配大量的经历调bug),那么我就应该果断放弃。
Hugo非常非常快,但中文文档和博客少,而且旧模板和新Hugo的兼容性也不好;Hexo中文文档和博客特别多,模板也不错,但是稍微麻烦一点,而且慢得多。
最后,我就简单地用Hugo搭建了一个个人CV(简历)网站。下面记录一下流程:
1. 本地搭建
1.1 安装Hugo
- 到Hugo官方GitHub仓库,下载最新的win64安装包。解压到
D:\hugo。 - 配置环境变量:
此电脑->属性->高级系统设置->环境变量->系统变量->Path->编辑->新建->D:\hugo。
1.2 创建站点
在命令行中运行hugo new site G:/RyanXing,即创建了一个名为RyanXing的文件夹,作为Hugo站点。
1.3 新建页面和文章
进入该文件夹:
新建页面:
hugo new links.md该文件自动出现在
content/links.md。创建文章:
hugo new post/myfirst.md其自动出现在
content/post/myfirst.md。放在post目录是为了方便聚合页面。注意要把draft一行去掉。draft意思是草稿,即在生成时不出现。
1.4 使用主题
在Hugo Themes选择喜欢的主题。有适合简历的,也有适合博客的。
要根据主题提供的README进行后续操作。假设选择Minos。根据说明文档,执行:
cd themes/
git clone --depth 1 https://github.com/carsonip/hugo-theme-minos
然后在根目录的config.toml中设置该主题为默认主题即可(添加该行):
theme = "hugo-theme-minos"
1.5 修改配置文件
我们现在继续修改根目录的config.toml。
baseurl = "https://ryanxingql.github.io/"
languageCode = "zh-CN"
title = "RyanXing's CV"
paginate = 10
theme = "hugo-theme-minos"
1.6 预览
在根目录执行:hugo server。此时生成的是静态文件,真的很快。只要server不关,会一直监控文件变化,自动生成静态文件。
我们可以看到命令行提示Web Server is available at ...。在浏览器输入http://localhost:1313。
一定要记得去掉正文的draft,否则不显示。
2. 部署
在GitHub上创建一个仓库,名为RyanXingQL.github.io。注意命名规范。
在根目录执行:hugo。
此时,所有的静态页面都会生成到public目录。执行以下命令:
cd public
git init
git remote add origin git@github.com:RyanXingQL/RyanXingQL.github.io.git
git add -A
git commit -m "first commit"
git push -u origin master
浏览器输入https://ryanxingql.github.io/,刷新一下就能看到啦。Hugo非常快。
如果要搭博客,后期要考虑的事情就多了。比如评论系统,各种装饰插件等。
Note | 用Hugo搭建博客并部署到GitHub Pages的更多相关文章
- 基于Hexo搭建博客并部署到Github Pages
基于Hexo搭建博客并部署到Github Pages 之前在简书上写东西,觉得自己还是太浮躁.本来打算用Flask自己写一个,以为是微框架就比较简单,naive.HTML.CSS.JS等都要学啊,我几 ...
- Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages
之前的这篇文章<Linux下使用 github+hexo 搭建个人博客01-hexo搭建>,相信大家都知道怎么搭建 hexo ,怎么切换主题,并且完成了一篇博文的创建,以及 MarkDow ...
- 史上最详细“截图”搭建Hexo博客并部署到Github
http://jingyan.baidu.com/article/d8072ac47aca0fec95cefd2d.html 大家也搭建过博客,很多时候,按着教程来做就可以了,但是我当时为了搭建Hex ...
- Termux搭建hexo博客并部署到GitHub
Termux搭建hexo博客并部署到GitHub 安装 termux-change-repo apt update apt install git && nodejs &&am ...
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置
前言 有朋友问了我关于博客系统搭建相关的问题,由于是做开发相关的工作,我给他推荐的是使用github的gh-pages服务搭建个人博客. 推荐理由: 免费:github提供gh-pages服务是免费的 ...
- Hexo瞎折腾系列(6) - 将博客同时部署到Github和Coding
前言 由于本人只是将Hexo博客同时部署到 Github 和 Coding.net ,所以这里只介绍怎么同时部署到这两个网站的pages. 之所以选择这两个网站,是因为国外用户可以访问 Github, ...
- 使用Hexo搭建个人博客并部署到GitHub或码云上全过程
一.前言 如上图所示:GitHub有Github Pages,而码云也有码云 Pages 1.Github Pages或Gitee Pages是什么呢? Github Pages或者Gitee Pag ...
- 如何用hugo 搭建博客
1,Hugo 简介 搭建个人博客有很多开源的博客框架,我们要介绍的框架叫作Hugo.Hugo 是一个基于Go 语言的框架,可以快速方便的创建自己的博客. Hugo 支持Markdown 语法,我们可以 ...
- 使用django搭建博客并部署
2017/8/31 18:27:59 为了以后参考的方便,在这里总结一下django搭建博客网站的主要步骤.以下大部分的内容,参考自Django中文文档 - 看云. 需要强调的是,这里使用的djang ...
随机推荐
- LeetCode刷题191218
好多天没有更新了,今天有空,刷一道. 算法第5题 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 1: 输入: "babad"输出: ...
- 使用PowerShell实现服务器常用软件的无人值守安装
操作系统:windows server 2016 , windows server 2019 软件环境: 类型 名称 版本 系统功能 TelnetClien IIS 启用Asp.n ...
- SpringCloudGateway开发详解
路由简介: SpringCloudGateWay 是用于替代zuul作为API网关,在gateway中有三个重要的名词:过滤器,断言,路由 过滤器与断言是路由的一部分,路由便是将请求进行一系列的处理后 ...
- IPv6升级测试指南(Android/iOS/Mac)
目录 我们升级到IPv6的原因 测试的时候的注意要点 Android/IOS/MAC测试总结 Android测试IPv6的方法 IOS端测试IPv6的方法 MAC浏览器端测试IPv6的方法 升级IPV ...
- 上手Neo4j
Neo4j是什么 软件安装及常用的配置选项介绍 下载 wget https://neo4j.com/artifact.php?name=neo4j-community-3.5.3-unix.tar.g ...
- PAT 1013 Battle Over Cities DFS深搜
It is vitally important to have all the cities connected by highways in a war. If a city is occupied ...
- IE浏览器远程代码执行高危漏洞(CVE-2019-1367)
IE浏览器远程代码执行高危漏洞(CVE-2019-1367)加固遇到的问题 一.背景介绍 Internet Explorer,是微软公司推出的一款网页浏览器.用户量极大.9月23日微软紧急发布安全更新 ...
- C#以对象为成员的例子
using System; using System.Collections.Generic; using System.Text; namespace test { class Program { ...
- 在线程中显示一个窗口(多个UI线程)
多数耗时操作可以异步执行,推荐async/await. 但和UI相关的部分仅能在UI线程执行,这时UI线程的耗时操作,导致界面卡死,不够友好. 我们可以创建一个单独的UI线程显示一个正在加载的窗口,可 ...
- 解决NuGet下载太慢的问题
以下载CefSharp.Wpf v57.0.0版本为例: 1.打开NuGet官网:https://www.nuget.org/ 2.输入CefSharp.Wpf,点击查询,如下所示: 3.确认版本正确 ...