当前位置: 首页 > news >正文

Github 创建自己的博客网站

参考pku大佬视频制作,附上B站视频:【GitHub Pages 个人网站构建与发布】

同时还参考了:【Python版宝藏级静态站点生成器Material for MkDocs】

GitHub Pages 介绍

内容参考:GitHub Pages - 杨希杰的个人网站 (yang-xijie.github.io)

Github pages 可以快速部署静态网站,你可以在 GitHub 的每一个仓库创建一个对应的静态网站,存放说明或文档。

通俗来说,就是白嫖GitHub的服务器来建站,GitHub Pages,与Git管理超搭,相当稳定的,而且有全球的CDN加速,也没被墙,我只能说真爽。

这里一定要注意:个人用户只有两种 GitHub Pages 网站的类型:一种是 user(用户),一种是project(项目)。

这里有介绍:GitHub Pages

user类型的网址只能对应唯一的用户,而且仓库的名字必须为 <username>.github.io,对应的网址为 http(s)://<username>.github.io

project类型的仓库则可以新建很多,只要仓库的名字不为 <username>.github.io 即可,对应的网址为 http(s)://<username>.github.io/<repository>

根据这两种类型,建站可以有两种策略:

  • 只创建一个user仓库<username>.github.io,所有的文章都放在这个仓库中。
    • 优点:只有一个仓库维护方便
    • 缺点:你的个人账户再新建project类型的仓库大概率会与这个user仓库冲突。但我感觉一般对于个人来说 一个仓库也完全够用。
  • 不创建user仓库,需要静态网站时新建多个project类型的仓库
    • 优点:仓库不限量 仓库之间互不冲突 可以使用不同的框架
    • 缺点:多个仓库维护困难

GitHub Pages创建(这部分可以不进行)

这部分参考Github官方文档:GitHub Pages

注意:这节是说的pages的创建,看个流程就可以了,如果要使用下一章节的Mkdocs主题,可以只创建好仓库。

创建仓库

创建一个名为username.github.io的新公共repos。其中username就是你在GitHub上的用户名。

注意:如果repos的第一部分与你的用户名不完全匹配,那么它将无法工作,因此确保正确使用。

clone repos

创建好仓库后,将仓库clone到本地。

git clone https://github.com/username/username.github.io

这里的username及的更换成你自己的。

编辑、push

git add --allgit commit -m "Initial commit"git push -u origin main

关于git操作可以参考其他博客,也可以参考我的记录:http://t.csdn.cn/AhjXg

Mkdocs

介绍完Github pages 后还有模板介绍,对于我这种前端小白来说,写一个前端UI能够杀了我,所以我采用了佬使用的模板Mkdocs。具体怎么使用可以参考以下部分:

Installation - Material for MkDocs (squidfunk.github.io)

Publish a Website with Material for MkDocs and GitHub Pages - 杨希杰的个人网站 (yang-xijie.github.io)

只要按照上述过程来,就可以成功创建一个属于自己的博客。

注意,这些博客全部都是Makedown格式的,只需要git md文件就行,github会自动将其部署为HTML文件,所以说对我这种小白来说,非常的方便。

mkdocs部署过程

这部分记录了我自己的部署过程,可以参考本节开始的url,也是可以的。

创建project

mkdocs new mkdocs-sitecd mkdocs-site

添加github操作 Add GitHub Workflow

使用GitHub Actions,您可以自动部署您的项目文档。在仓库的根目录下,创建一个新的GitHub Actions工作流,例如:. GitHub /workflows/PublishMySite.yml文件,

$ mkdir .github
$ cd .github
$ mkdir workflows
$ cd workflows
$ vim PublishMySite.yml

如果vim用不了,就自己建一个文件。

在yml文件中复制粘贴如下内容:

name: publish site
on: # 在什么时候触发工作流push: # 在从本地main分支被push到GitHub仓库时branches:- mainpull_request: # 在main分支合并别人提的pr时branches:- main
jobs: # 工作流的具体内容deploy:runs-on: ubuntu-latest # 创建一个新的云端虚拟机 使用最新Ubuntu系统steps:- uses: actions/checkout@v2 # 先checkout到main分支- uses: actions/setup-python@v2 # 再安装Python3和相关环境with:python-version: 3.x- run: pip install mkdocs-material # 使用pip包管理工具安装mkdocs-material- run: mkdocs gh-deploy --force # 使用mkdocs-material部署gh-pages分支

现在,当一个新的提交被推送到主分支或主分支时,静态站点将被自动构建和部署。推送您的更改以查看工作流程的运行情况。 

Github 

将内容git到github上

$ git init
$ git add .
$ git commit -m "init"

GitHub > New Repository

GitHub > Repository > Settings > Actions > General >

  • Actions permissions: Allow all actions and reusable workflows
  • Workflow permissions: Read and write permissions
  • Click Save
$ git remote add origin 你自己的clone地址
$ git branch -M main
$ git push -u origin main

GitHub > Repository > Settings > Pages > Source > gh-pages > Click Save

如果出现404,那就等一下,让子弹飞一会。

http://www.lryc.cn/news/112117.html

相关文章:

  • Windows上安装 jdk 环境并配置环境变量 (超详细教程)
  • 高效构建 vivo 企业级网络流量分析系统
  • 认识awk
  • 【C#学习笔记】数组和索引器
  • 常见距离计算的Python实现
  • 开发运营监控
  • 食品小程序的制作教程
  • Kubernetes(K8s)从入门到精通系列之十三:软件负载平衡选项
  • 数据特征选择 | Matlab实现具有深度度量学习的时频特征嵌入
  • 浅谈webpack
  • 【 stable diffusion LORA模型训练最全最详细教程】
  • 蓝桥杯上岸每日N题 第八期 (全球变暖)!!!
  • CSS基础介绍笔记1
  • https请求异常引发(Received fatal alert: unrecognized_name):如何快速解决项目中问题?
  • 小程序 view下拉滑动导致scrollview滑动事件失效
  • 《ROS2》教程
  • 抖音seo源码开发源代码搭建分享
  • MATLAB——使用建立好的神经网络进行分类程序
  • Spring5.2.x 源码使用Gradle成功构建
  • iOS永久签名工具 - 轻松签使用教程
  • 如何申请中国境内提供金融信息服务业务许可
  • Java多线程(六)
  • ceil(),floor(),round()函数C++详解
  • 自动化处理,web自动化测试处理多窗口+切换iframe框架页总结(超细整理)
  • 企业服务器数据库中了devos勒索病毒怎么办如何解决预防勒索病毒攻击
  • three.js学习
  • Vue3 第一节 Vue3简介以及创建Vue3工程
  • 用docker 部署springboot项目
  • maven 模块打包时包含依赖和打包可执行的jar
  • perl脚本调用openssh不能正确执行(ctl_dir /root/.libnet-openssh-perl/ is not secure)的原因排查