搭建本地hugo博客

part1: Hugo + GitHub 免费部署自己的博客介绍

(00:00-00:15) 1.1: 视频目标与演示 视频旨在分享如何使用 HugoGitHub 免费部署一个属于自己的个人博客。开头展示了作者已经部署成功的博客页面作为最终效果预览。

Github Action:0 Action部署hugo项目的aciton程序 最基本原理

	[action部署hugo项目的aciton程序]
		<action部署hugo项目的aciton程序的核心:让action使用hugo命令,action环境需要hugo命令执行hugo博客>
		<1 有参考作用的使用uses参数的action程序的写法(参考如何让AI写action程序)>
		<2 有参考作用的使用run字段的action程序的写法 https://aistudio.google.com/prompts/1dv1SBgRsYgFBSgYe1Dseg0dyYouTZ3_P(参考如何让AI写action程序)>

	[[[[在action环境安装项目包(hugo包)的两种做法(参考如何让AI写action程序)]
		《1 uses 关键字并指定一个像 别大大佬些好的aciton 比如peaceiris/actions-hugo@v3 这样的“动作 (Action)”时,你是在委托这个预先打包好的工具去完成安装和配置 Hugo 的任务》
		《2 直接用run字段亲自告诉那个临时的 Linux 系统具体怎么做才能把 Hugo 装好》


	[aciton想部署hugo的核心就是用别人预先写好的东西]
		《hugo官方有提供官方action动作把仓库代码下载(检出) 到当前的虚拟运行环境中,它就是actions/checkout@v4,通过uses: actions/checkout@v4: 就能使用一个预先写好的、官方提供的“动作” (Action)》

Github Action:2 Github Action部署项目原理:github Action是将项目部署到其它仓库,不是部署到自己的仓库

(08:41-10:19) 4.4: 配置 Repository Secret

  • 目的:将生成的 Token 安全地提供给 GitHub Actions workflow 使用。不应该直接将 Token 字符串写入 YAML 文件。
  • 操作路径:回到♎♐存放 Hugo 源代码的仓库(即 hugo-main),进入该仓库的 Settings -> 左侧菜单 Security 下的 Secrets and variables -> Actions
  • 操作:点击 New repository secret 按钮。
  • 配置 Secret
    • Name:输入 Secret 的名称。这个名称必须与 workflow YAML 文件中 secrets. 后面引用的名称完全一致。作者在这里将其命名为 TOKEN
    • Secret:将刚才复制并保存完整 Token 字符串粘贴到这里。
  • 保存:点击 Add secret
  • 优点:使用 Secrets 可以隐藏敏感信息,workflow 运行时会安全地注入该值,比硬编码在代码中安全得多

[[[[[使用aciton后将分源代码仓库和静态页面仓库 ]https://aistudio.google.com/prompts/1dv1SBgRsYgFBSgYe1Dseg0dyYouTZ3_P 《《《hugo-main 仓库 (源代码仓库),专门用来提交项目源码的仓库,以及用来运行action的仓库,不需要开启github page的功能,所以hugo-main仓库不需要公开,也不需要把静态资源上传到这仓库上》 《《《hugo-dev 仓库 (部署目标/静态页面仓库),hugo-main运行action后生成的静态资源文件所推送到的仓库,是存放最终网站文件并对外提供访问的地方,它是自动化流程的终点/发布目标,因此我们在仓库开启github page功能》 《《《aciton中的参数 EXTERNAL_REPOSITORY: letere-gz/hugo-dev 就是用来 明确指定了main仓库部署的目标是这个dev仓库。》

Github Action:2 用github Action把源码仓库部署项目到github Page仓库的真正意义

(00:09-00:32) 1.2: 手动部署痛点与自动化优势

  • ♈指出传统方式下,每次修改完文件后,都需要手动将生成public 文件夹上传到服务器或托管平台,这个过程比较麻烦
  • ♈使用 GitHub Actions 可以实现自动化自动帮我们生成 public 目录,并将其部署静态页面网站(如 GitHub Pages)。
  • 优点:只需提交代码 (git push),后续的构建部署过程就能自动完成方便很多。x x <-https://aistudio.google.com/prompts/1dv1SBgRsYgFBSgYe1Dseg0dyYouTZ3_P 《《《♐可以源码仓库和静态资源仓库分开;因为源码仓库很重要,每次项目回溯时回溯源码仓库的代码才有意义,回溯静态资源仓库的代码没意义,这意味着未来版本控制就必须要push推送源码仓库,♓但要推送源码仓库就意味着每次推送都要同时push推送源码仓库和静态资源仓库,手动维护两个独立的 Git,需再手动进行第二次推送 流程退冗余了;♐而有了action部署静态资源后,每次只需要推送最重要的源码仓库,无需做冗余的推送静态资源仓库的步骤,无需再手动进行第二次推送> 《♓我觉得最主要作用是源码静态资源仓库和源代码仓库分开;♐其实不要action也行,不要action就不去推送源代码仓库了,在本地只推送public静态资源即可,反正都是推送步骤不会减少 《《♐用action把部署静态资源到github page的真正价值:多人协作,多人协作时,需要所有人都遵循同样的流程,但很是有人知道我们要推送的是public静态资源,不是源码,这就导致源码把静态资源给污染了(目录混入源代码仓库会极大地污染 Git 历史)》 <设置好 Action 后,你甚至可以通过 GitHub 网页界面直接编辑 Markdown 文件并提交,Action 照样能完成部署,你此时甚至不需要本地安装 Hugo;因此未来你更换了本地开发机器,构建环境都是一致的,每次 Action 运行时,都是用同一个版本、同一种配置的 Hugo 工具在同一种操作系统环境下进行构建,结果更可控>
0%