使用Hexo部署NexT主体网站
一.使用git提交文件
参考: 从零开始搭建个人博客(超详细) - 知乎 致谢!
第一种:本地没有 git 仓库
- 直接将远程仓库 clone 到本地;
- 将文件添加并 commit 到本地仓库;
- 将本地仓库的内容push到远程仓库。
$ ssh -T git@github.comHi xidianswq! You've successfully authenticated, but GitHub does not provide shell access.
$ git clone git@github.com:xidianswq/switch_homepage.gitCloning into 'switch_homepage'...remote: Enumerating objects: 3, done.remote: Counting objects: 100% (3/3), done.remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0)Receiving objects: 100% (3/3), done.
$ cd ./switch_homepage
$ git statusOn branch mainYour branch is up to date with 'origin/main'.Untracked files:(use "git add <file>..." to include in what will be committed)test.txtnothing added to commit but untracked files present (use "git add" to track)
$ git add test.txt
$ git commit -m test.txt "test.txt"[main 4463650] test.txt1 file changed, 0 insertions(+), 0 deletions(-)create mode 100644 test.txt
$ git logcommit 4463650540e1bc66dc16aedc8b132e11b5e469ed (HEAD -> main)Author: xidianswq <3209507800@qq.com>Date: Thu Feb 6 22:31:41 2025 +0800test.txtcommit 8f09f668066393a7b16b2c8c5df31e0d6a64eaa1 (origin/main, origin/HEAD)Author: xidianswq <94434249+xidianswq@users.noreply.github.com>Date: Thu Feb 6 21:32:08 2025 +0800Initial commit
$ git push origin mainEnumerating objects: 4, done.Counting objects: 100% (4/4), done.Delta compression using up to 16 threadsCompressing objects: 100% (2/2), done.Writing objects: 100% (3/3), 269 bytes | 269.00 KiB/s, done.Total 3 (delta 0), reused 0 (delta 0), pack-reused 0To github.com:xidianswq/switch_homepage.git8f09f66..4463650 main -> main
第二种:本地有 Git 仓库,并且我们已经进行了多次 commit 操作
- 建立一个本地仓库进入,init 初始化;
- 关联远程仓库;
- 同步远程仓库和本地仓库;
- 将文件添加提交到本地仓库;
- 将本地仓库的内容 push 到远程仓库。
$ ssh -T git@github.comHi xidianswq! You've successfully authenticated, but GitHub does not provide shell access.
$ cd switch_homepage/public/switch_homepage/
$ git remote add origin git@github.com:xidianswq/switch_homepage.git
$ git add test2.txt
$ git commit -m "test2.txt"
$ git push origin masterEnumerating objects: 3, done.Counting objects: 100% (3/3), done.Writing objects: 100% (3/3), 207 bytes | 207.00 KiB/s, done.Total 3 (delta 0), reused 0 (delta 0), pack-reused 0remote:remote: Create a pull request for 'master' on GitHub by visiting:remote: https://github.com/xidianswq/switch_homepage/pull/new/masterremote:To github.com:xidianswq/switch_homepage.git* [new branch] master -> master/
两种由于创建的主体不同,如果关联同一仓库即会产生分支Branches,例如main和master两个版本
二.Hexo部署个人博客
参考: 个人博客第5篇——安装node.js和Hexo - 知乎 致谢!
1.本地静态部署
- 完成git通过ssh连接github步骤
- node官网下载安装
- 用 node -v 和 npm -v 命令检查版本
- 设置npm在安装全局模块时的路径和环境变量(npm install X -g时的安装目录):
npm config set prefix "D:\nodejs\node_global"
npm config set cache "D:\nodejs\node_cache"
- 设置环境变量
npm install webpack -g
github创建XXX.github.io仓库
npm install -g hexo-cli
hexo init
hexo g
hexo s #static deploy
解决 bash: hexo: command not found:
参考: 完美解决 bash: hexo: command not found-CSDN博客
2.动态部署及后续更新
- 修改hexo根目录_config.yml文件
deploy:type: gitrepository: XXX.github.io.git #你的仓库地址branch: master
npm install hexo-deployer-git --save
重新部署网页三条指令:
- hexo clean #清除缓存文件 db.json 和已生成的静态文件 public(同时检查语法)
- hexo g #生成网站静态文件到默认设置的 public 文件夹(hexo generate 的缩写)
- hexo d #自动生成网站静态文件,并部署到设定的仓库(hexo deploy 的缩写)
注:打开XXX.github.io网页时使用默认分支branch,可在设置内设置默认分支
(参考: github:master提交项目到远程仓库出现“There isn’t anything to compare.”_there isn鈥檛 anything to compare.-CSDN博客 )。
三.安装及优化NexT主题
1.安装NexT主题
参考目录:
个人博客第7篇——设置next主题 - 知乎 ;
个人博客第8篇——优化主题(持续更新) - 知乎
致谢!
- 在网页根目录:
git clone https://github.com/theme-next/hexo-theme-next themes/next下载主题 - 打开根目录下的
\_config.yml(称为站点配置文件),修改主题(注意冒号后都要有空格):
# Site
title: XXX #标题
subtitle: ''
description: 选择有时候比努力更重要 #简介或者格言
keywords:
author: XX #作者
language: zh-CN #主题语言
timezone: Asia/Shanghai #中国的时区# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: next #主题改为next
- 打开目录Blog/themes/next/下的_config.yml(称为主题配置文件),选择需要使用的主题,注释其他的
# Schemes
#scheme: Muse
#scheme: Mist
#scheme: Pisces
scheme: Gemini #这是我选的主题
- 回到根目录打开Git Bash,输入如下三条命令:
hexo clean & hexo g & hexo d
2.优化主题
参考:
[1] 个人博客第8篇——优化主题(持续更新) - 知乎
[2] 在hexo博客中插入图片的方法_hexo插入图片-CSDN博客致谢!
- 下载主题next:
git clone https://github.com/theme-next/hexo-theme-next themes/next
- 参考博客中错误:
- 第6个,设置背景图片,添加内容的时候,url(/images/…),斜杠一定不要漏加
其他:
-
新建文章时,在相同目录下创建同名文件夹(便于图片管理)
- 打开站点配置文件_config.yml,搜索post_asset_folder字段,设置其值为true
- 安装hexo-asset-image:
npm install hexo-asset-image --save - 此时hexo new "fileName"会在/source/_posts 目录下创建同名的文件夹
- 只需在 md 文件里使用  ,无需路径名就可以插入图片。
原文链接: Hexo框架下用NexT(v7.0+)主题美化博客_next主题魔改教程-CSDN博客
-
其他参考:
hexo+next添加鼠标点击和打字特效-CSDN博客
hexo博客工具屏蔽上传一些私人文章_hexo markdown设定文章不发布-CSDN博客
Hexo本地预览与部署样式不统一的几种可能的解决思路 | 云上时记
Hexo 博客上手入门指南、性能优化、界面美化、扩展功能、各种疑难杂症等解决方案全系列合辑 | 竹山一叶
3.NexT主体颜色更改
- 在网页上右键想要更改的样式,点击检查(或F12,在网页元素 “flex” 中寻找对应 html 代码)
- 在样式中找到对应规则,复制关键字,在vscode中寻找对应段代码,进行相应修改
- 一些常用的样式配置文件:
~\themes\next\source\css\\variables\base.styl~\themes\next\source\css\\variables\Pisces.styl~\themes\next\layout\macro\post.swig~\themes\next\layout\\partials\footer.swig
themes\next\source\css\_common\outline\header\site-meta.styl
4.侧边栏“当前位置”显示样式更改
- vscode搜索
.sidebar-nav-active,此为点击后的显示效果,可更改颜色与字体
.sidebar-nav-active {border-bottom-color: $sidebar-highlight;color: $sidebar-highlight;font-weight: bold;font-size: 1.05em;font-style: italic;&:hover {color: $sidebar-highlight;}
}
- 同理,更改
.active-current > a,如下:
.active-current > a {color: $sidebar-highlight;font-weight: bold;font-size: 1.25em;font-style: italic;&:hover {color: $sidebar-highlight;}}
5.更改字体
(参考: 字体设置 - Hexo-NexT )
-
在 Browse Fonts - Google Fonts 网站点击想使用的字体
- 点击
Get font、Get embed code - 复制
Embed code in the <head> of your html内的内容 - 复制
字体: CSS class内的内容
- 点击
-
修改
~\themes\next\layout\_partials\head\head.swig,在{{ next_font() }}下添加之前复制的内容<link href="https://fonts.googleapis.com/css?family=Noto+Serif+SC|Roboto&display=swap" rel="stylesheet"> -
在需要修改字体的地方添加或修改
font-style,如何搜索修改位置见上NexT主体颜色更改
最后,欢迎参观我的主页!
相关文章:
使用Hexo部署NexT主体网站
一.使用git提交文件 参考: 从零开始搭建个人博客(超详细) - 知乎 致谢! 第一种:本地没有 git 仓库 直接将远程仓库 clone 到本地;将文件添加并 commit 到本地仓库;将本地仓库的内容push到远程仓…...
图书管理项目(spring boot + Vue)
想要该项目的话,就 jia 我,并在评论区给我说一下,只需要1元,我把整个项目发给你 jia微:18439421203(名字叫:Bingo) 运行图片:...
python实现常见数学概率分布
常见正态分布 1.贝塔分布1.1 概率密度函数1.2参数对分布形状的影响1.3 应用场景1.4 python实现 2. 帕累托分布(80/20法则)3. 正态分布(高斯分布)3.1 正态分布对应性质3.2 正态分布对应图像实现的完整项目示例,包含权限控制、数据加载状态处理、性能优化等常见高级功能。创建一个简单的博客系统: // 项目结构: src/ |-- components/ | |-- ArticleList.jsx | |-- Article.jsx | |-- He…...
基于Qt 和微信小程序的用户管理系统:WebSocket + SQLite 实现注册与登录
目录 一. 概要 二. 技术栈 三. 系统功能设计 3.1 功能模块 3.2 数据表设计 四. 具体实现 4.1 Qt 服务端 4.1.1 初始化 WebSocket 服务器 4.1.2 用户管理界面 4.2 微信小程序端 4.2.1 注册功能 4.2.2 登录功能 五. 运行效果 六. 源码下载 一. 概要 在物联网和智能设备…...
在CT107D单片机综合训练平台上实现外部中断控制LED闪烁
引言 在单片机开发中,外部中断是一个非常重要的功能,它可以让单片机在检测到外部信号变化时立即做出响应。本文将详细介绍如何在CT107D单片机综合训练平台上使用外部中断来控制LED灯的闪烁。我们将使用两种不同的方式来实现这一功能:一种是在…...
HTML之JavaScript使用JSON
HTML之JavaScript使用JSON JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON是JavaScript对象的字符串表示法,它使用文本表示一个js对象的信息,可以将json字符串转换…...
算法很美笔记(Java)——树
性质 树 上面的性质因为两个结点由一条边连成 结点数目越多,算法复杂度越高 二叉树 结构 层次遍历 利用队列,弹一个,加N个(队列里弹出一个元素,就把这个元素的所有孩子加进去) 具体来说:指…...
SQL面试题4:相互关注问题
引言 在社交媒体和各类社区平台蓬勃发展的当下,用户之间的关系网络成为了平台运营和数据分析的关键部分。相互关注作为一种重要的社交关系,不仅反映了用户之间的紧密程度,还对平台的社交生态、内容传播等方面有着深远影响。本文将聚焦于 SQL…...
ArcGIS基础知识之ArcMap基础设置——ArcMap选项:常规选项卡设置及作用
作为一名 GIS 从业者,ArcMap 是我们日常工作中不可或缺的工具。对于初学者来说,掌握 ArcMap 的基础设置是迈向 GIS 分析与制图的第一步。今天,就让我们一起深入了解 ArcMap 选项中常规选项卡的各个设置,帮助大家更好地使用这款强大的软件。 在 ArcMap 中,常规选项卡是用户…...
jvm 线程监控调试
文章目录 前言一、使用JDK工具转储线程文件(如jstack)1. 找到Java进程的PID:2. 使用jstack生成线程转储文件:3.验证生成的线程转储文件:二、分析文件1.使用在线工具进行分析上传thread-dump文件,等待解析完成2.查看分析结果总结前言 提示:使用jdk自带工具转储线程监控文…...
25、深度学习-自学之路-卷积神经网络基于MNIST数据集的程序展示
import keras #添加Keraskuimport sys,numpy as np from keras.utils import np_utilsimport osfrom keras.datasets import mnist print("licheng:""20"\n) np.random.seed(1)(x_train,y_train),(x_test,y_test) mnist.load_data() #第一次…...
【C++】解锁<list>的正确姿势
> 🍃 本系列为初阶C的内容,如果感兴趣,欢迎订阅🚩 > 🎊个人主页:[小编的个人主页])小编的个人主页 > 🎀 🎉欢迎大家点赞👍收藏⭐文章 > ✌️ 🤞 …...
Qt中的事件
写一个 可以拖动的按钮 DraggablePushButton.h 头文件 #ifndef DRAGGABLEPUSHBUTTON_H #define DRAGGABLEPUSHBUTTON_H#include <QPushButton> #include <QMouseEvent>class DraggablePushButton : public QPushButton {Q_OBJECTpublic:explicit DraggablePushBu…...
变化检测相关论文可读list
一些用得上的: 遥感变化检测常见数据集https://github.com/rsdler/Remote-Sensing-Change-Detection-Dataset/ 代码解读:代码解读 | 极简代码遥感语义分割,结合GDAL从零实现,以U-Net和建筑物提取为例 NeurIPS2024: https://mp.w…...
Ansible中playbook的变量
变量 playbook的变量有以下几种 在playbook中用户自定义的变量远程主机中由Ansible收集的变量在文件模板中使用的上述两种变量把任务结果作为一个变量使用,叫注册变量用户在执行playbook时,通过命令行传入的变量,叫做额外变量 在playbook中…...
亚信安全正式接入DeepSeek
亚信安全致力于“数据驱动、AI原生”战略,早在2024年5月,推出了“信立方”安全大模型、安全MaaS平台和一系列安全智能体,为网络安全运营、网络安全检测提供AI技术能力。自2024年12月DeepSeek-V3发布以来,亚信安全人工智能实验室利…...
相似性图相关性重构网络用于无监督跨模态哈希
《Similarity Graph-correlation Reconstruction Network for unsupervised cross-modal hashing》 摘要1. 引言2. 相关工作2.1. 监督跨模态哈希方法2.2. 无监督跨模态哈希方法 3. 方法论3.1 问题定义3.2 特征提取3.3 模态内关系图构建3.4. 局部关系图重置3.5. 跨模态关系图构建…...
【Bug】属性 PackageVersion 应在所有目标框架中具有单个值,但却具有以下值
文章目录 问题问题代码原因解决处理Bug的具体步骤 问题 严重性 代码 说明 项目 文件 行 禁止显示状态 错误(活动) NU1105 无法读取“x”的项目信息: 属性 PackageVersion 应在所有目标框架中具有单个值,但却具有以下值: 1.0.0, 1.0.5 x (net8.0-android), x (net8.…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
短视频矩阵系统文案创作功能开发实践,定制化开发
在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...
日常一水C
多态 言简意赅:就是一个对象面对同一事件时做出的不同反应 而之前的继承中说过,当子类和父类的函数名相同时,会隐藏父类的同名函数转而调用子类的同名函数,如果要调用父类的同名函数,那么就需要对父类进行引用&#…...
认识CMake并使用CMake构建自己的第一个项目
1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...
