前言

新来的友友们建议先看一下《教程&笔记常量申明》

Hexo 篇

Hexo 上传博客到 GitHub

  1. <BlogRoot>的地址框中输入cmd,然后按回车调用命令行

  2. 输入hexo clean,来清理缓存文件以及删除之前生成的静态文件

  3. 输入hexo g,来构建新的静态文件

  4. 输入hexo s,来启动本地预览

  5. 输入hexo dhexo deploy,来将你的项目会自动部署到远端

  6. 输入 GitHub 账号密码即可部署成功(初次上传会需要)

hexo deploy 部署不成功

情况 1:有可能和 npm 版本有关,升级 npm

  • 查看当前版本:npm -v
  • 更新到最新版本:npm install -g npm

情况 2:有可能和网速有关,重新上传几次
情况 3:有可能代码有错误,得检查
情况 4:有可能没有执行 hexo clean 命令

卸载 Hexo 插件

方法一:

查看插件npm list
卸载插件npm uninstall <对应插件名>

方法二:

在代码编辑器里搜索插件名,删除对应代码即可

方法二可作为方法一失败后的备选方案

参考教程:https://www.dazhuanlan.com/2019/10/12/5da110cdd9a7b/

🔥 嵌入 Bilibili 视频到博客文章中

  1. 在 Bilibili 视频页中将鼠标移到转发按钮

  2. 下方将会弹出一个框,看到嵌入代码这,复制src="&page之间的代码(其实直接复制整条代码就行,但其视频显示样式不是最佳状态)

  3. 将代码粘贴到下方代码模板的<Copy>这,再将该段代码粘贴到博客文章中,再 Hexo 三连即可看到效果。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <div style="position: relative; padding: 30% 45%;">
    <iframe
    style="position: absolute; width: 100%; height: 100%; left: 0; top: 0;"
    src="<Copy>&page=1&as_wide=1&high_quality=1&danmaku=1"
    frameborder="no"
    scrolling="no"
    allowfullscreen="true"
    >
    </iframe>
    </div>
  4. 效果如下:

说明:有些参数可参考以下教程中的介绍来更改。
参考教程https://www.cnblogs.com/wkfvawl/p/12268980.html (教程部分地方可能过时,仅参考)

🔥 点击文章卡片跳转其他站点(Butterfly 主题)

无意中看源码发现的。因为我还搭有其他网站,所以有这个跳转需求。

直接在头部 yaml 中加上:link: <URL>,即可点击文章卡片跳转到相应链接。

升级 Hexo 博客主题

方法一git pull拉取最新版本主题(所有魔改全部清除)
方法二:按照发布版本来对比更改源码(博主目前采用方法)

将 fork 的项目和上游保持同步更改

方法一

  1. 若本地没有部署自己的仓库,则 git clone <RepoGit>
  2. git remote add upstream <OriginRepoGit>,拉取上游仓库的更改
  3. 再来解决文件冲突,解决好了可以 Git 三连

方法二:重新 fork

参考教程:https://www.jianshu.com/p/840ea273f25a

🔥 归档页 Archive 文章显示数设置

为什么要特别去设置归档页文章显示数?

我一直以来觉得归档页显示的文章数得多于首页显示的才算有意义,否则归档页只是缩小版的博客首页,反而在文章检索上还不清晰直观,那么归档页的意义又何在呢?但如果你想快速知晓一名博主某一周期的文章发布情况或者通过时间维度来查找文章,这时查看归档页就是明智的选择,它可以清晰看到发布时间和文章名两个维度。

还有一点好处,拿 Butterfly 主题博客来说,该主题有标志性的侧边栏,如果归档页只显示默认 10 篇文章的话,那么多出来一长条的侧边栏会显得非常丑和多余。

综上两点,设置归档页文章显示数再多于首页,非常有必要!

  1. 首先打开<BlogRoot>\_config.yml文件,找到archive_generator该字段,设置per_page即可
1
2
3
4
5
6
7
archive_generator:
enabled: true
per_page: 20 # 归档页文章显示数
yearly: false # 生成年度归档
monthly: true # 生成每月归档
daily: false # 生成每日归档
order_by: -date # 默认发布日期降序排序
  1. 如果没有看到该字段,则将这些代码参数加上去

  2. 如果加了后没有效果,说明你缺少hexo-generator-archive插件,在博客下打开命令行,输入npm install hexo-generator-archive --save下载插件即可


Git 篇

Branch 代码分支

命令作用
git branch显示所有本地分支,同时也能查看当前所在分支
git branch <branch>创建名为 <branch> 的分支
git checkout <branch>切换到名为 <branch> 的分支
git checkout -b <branch>创建并切换到名为 <branch> 的分支
git merge <branch>合并名为 <branch> 的分支到当前分支
git branch -d <branch>删除名为 <branch> 的分支
git push -u origin <branch>将名为 <branch> 的分支推送到远程仓库并设置该分支为默认推送分支
git fetch origin获取远程仓库的所有分支和更新
git pull origin <branch>获取远程仓库的更新并将名为 <branch> 的分支合并到当前分支

报错合集

没有访问仓库的权限或仓库不存在

报错代码Please make sure you have the correct access rights and the repository exists

原因:公钥出问题了,需要删除.ssh 文件夹,然后重设置用户名和邮箱再重新生成 ssh 公钥即可解决
解决

  1. 删除C:/Users/Administrator/.ssh文件夹
  2. 打开 cmd 命令行
  3. 设置用户名:git config --global user.name <UserName>
  4. 设置用户名邮箱:git config --global user.email <Email>
  5. 查看设置:git config --list
  6. 然后继续输入命令,修改后面的邮箱即可:ssh-keygen -t rsa -C <Email>
  7. 打开 GitHub 网站,点击右上角头像
  8. 点击 Settings
  9. 将.ssh 文件夹里的id_rsa.pub用记事本打开,复制所有代码
  10. 粘贴到Settings👉SSH and GPG keys👉Key框中
  11. Title填写rsa
  12. 点击绿键 Add SSH key
  13. 重新 git 即可

参考教程:https://blog.csdn.net/qq_43705131/article/details/107965888

git push 失败

报错代码

1
2
3
4
5
6
7
8
 ! [rejected]        XXX -> XXX (fetch first)
error: failed to push some refs to 'https://github.com/XXX/XXX.git
'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

原因:你的仓库有其它分支的更改,比如你的团队项目,别人更改过,而你本地没有导入,或者你通过 GitHub 官网修改过代码。

解决:所以这时需要git pull --rebase origin <BranchName>命令来下拉远程仓库最新代码,最后再 push 本地代码。

解释:该命令的意思是把远程库中的更新合并(pull=fetch+merge)到本地库中,-rebase的作用是取消掉本地库中刚刚的 commit,并把他们接到更新后的版本库之中。

参考教程:解决办法:git 错误 error: failed to push some refs to 'https://github.com/...

GitHub 网站访问慢或访问不了

删除 GitHub 仓库

  1. 点击右上角头像
  2. 点击your repositories
  3. 点击要删除的仓库,进入详情页
  4. 找到setting设置,下拉至最后可以看到删除选项
  5. 输入代码库名称确认删除,最后输入密码认证即可

删除 GitHub 单个文件

可以通过命令(自行百度),也可以通过在 GitHub 仓库里直接删除(点击要删文件,点击右上角垃圾箱图案)

🔥 上传项目到 GitHub 仓库

确保你本地下载了 Git 软件(Mac 端不用下载,用终端即可)

  1. 在 GitHub 里新建一个项目

  2. 复制 HTTPS 地址备用

  3. WIN端 - 右键本地仓库文件夹,再点击 git bash here

    MAC端 - 打开本地仓库文件夹下的终端

  4. 依次输入:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    git init  #初始化
    git add . #上传所有文件
    git commit -m "init" #提交时的注释
    git remote add origin <RepoGit> #连接你仓库的Git地址,使电脑知道代码要上传至哪个仓库
    git branch -M <BranchName> #将默认main分支名改为你自己设置的,不改可跳过
    #若第一次提交要加上"-u",如下
    git push -u origin <BranchName>
    #若提交失败,显示:error: failed to push some refs to,则加上"-f"来强制提交
    git push [-u] origin <BranchName> -f

    纯享版(按需自行更改):

    1
    2
    3
    4
    5
    git init
    git add .
    git commit -m "init"
    git remote add origin <RepoGit>
    git push -u origin main

设置 GitHub 仓库私有化

  1. 进入仓库
  2. 点击Settings拉到最下,点击Change visibility

git clone 速度太慢解决方法

使用 github 的镜像网站进行访问,github.com.cnpmjs.org,只需在 HTTPS 型仓库 Git 地址里的github.com后加.cnpmjs.org,不出意外下载速度会很快。

注意:只对 HTTPS 有效,对 SSH 无效

参考教程:Git 系列 (01):git clone 速度太慢解决方法

更改 git 提交记录 commit

场景:有时候你git commit -m "<Custom>"时发现<Custom>描述有误想改(此时还没有 push)

  1. git bash里输入git commit --amend
  2. 按下insert键即可输入信息,第一行就是你刚才输入有误的<Custom>
  3. 更改后按下Esc,再输入:wq即可保存状态
  4. 再来 push 到远程代码仓库即可
  5. (额外)输入git log可以看你提交过的 git 历史,按下wq可以退出 log 状态

参考教程:git commit --amend 修改 git 提交记录用法详解

撤销 git add 和 git commit

分别是:

1
2
git reset HEAD
git reset --soft HEAD^

参考文章:Git 中的各种后悔药

查看远程仓库地址

git remote -v

vscode git 不提示代码更改

步骤:

  1. 打开 vscode 设置
  2. 输入git.path
  3. 点击settings.json中编辑
  4. 加一行代码"git.path": "F:/Git/Git/bin/git.exe"(这换成你自己 git.exe 的路径)

⭐️ 更改历史Git提交记录和本地Git设置里的电子邮箱和用户名

背景:我有两个账号,有时候会阴差阳错用另一个账号提交,导致了我账号里的贡献表里没有显示,虽然贡献表对我未来求职没有特别显著的帮助,但我还是觉得真实数据的表格看起来更顺眼、心里也踏实。

历史Git提交记录

1
2
git filter-branch -f --env-filter "GIT_AUTHOR_EMAIL='new_email'; GIT_COMMITTER_EMAIL='new_email';" HEAD
git push --set-upstream origin main --force

注意:

  1. 输入这些命令之前,得确保提交分支为空,如果有代码尚未提交,那么请先 push 到仓库。
  2. new_email 请替换成你的目标邮箱,注意有 2 个。
  3. main 为你分支名。

本地Git设置

1
2
3
4
5
# 检查你的 Git 配置
git config --list
# 修改用户名和电子邮箱
git config --global user.name "Your GitHub username"
git config --global user.email "Your GitHub email"

结束语

如果有疑问或哪个地方表述有问题、有更好解决方案,欢迎留言!啊啊啊