hexo-tags

分类标签中关于大小写的bug

1. 描述

当我的分类标签写的是Scrapy时,打开我的博客找到Scrapy标签,点击Scrapy却出现404页面。
当我把标签改为scrapy小写,再发布到网上,点击scrapy就不会出现404问题。
后来发现原来是git标签生成时忽略了大写,生成的实际标签为scrapy。
于是我来到我的Github中,找到Gladysgong.github.io/categories/爬虫/这个目录,发现实际生成的也是scrapy,所以
原因就在这里了。

2. 解决

1
2
3
4
5
6
7
8
9
10
11
12
13
# 修改文件:
cd blog/.deploy_git
vi .git/config
将ignorecase=true改为ignorecase=false
# 删除Gladysgong.github.io中的文件并提交:
git rm -rm *
git commit -m "clean all files"
git push
# Hexo再次生成及部署:
cd ..
hexo clean
hexo g
hexo d

参考:http://gongyanli.com/Hexo%E5%88%86%E7%B1%BB%E6%A0%87%E7%AD%BE%E4%B8%AD%E5%85%B3%E4%BA%8E%E5%A4%A7%E5%B0%8F%E5%86%99%E7%9A%84bug/

hexo 博客部署

发布流程 - V2

  1. 安装hexo-deployer-git插件

    1
    npm install hexo-deployer-git --save
  2. 修改_config.yml配置

    1
    2
    3
    4
    5
    deploy:
    type: git
    repo: https://github.com/username/username.github.io.git
    branch: master
    message:
  3. 编译

    1
    hexo g
  4. 部署

    1
    hexo d

以上两步可以使用单条命令进行简化:

1
hexo g -d # 意为生成静态文件后立即部署网站
  1. 等待2min左右,页面展示。

V2流程中, 步骤1、2只需执行一次。

原理

当初次新建一个库的时候,库将自动包含一个master分支。请在这个分支下进行写作和各种配置来完善您的网页。当执行hexo deploy时,Hexo会创建或更新另外一个用于部署的分支,这个分支就是_config.yml配置文件中指定的分支。Hexo会将生成的站点文件推送至该分支下,并且完全覆盖该分支下的已有内容。因此,部署分支应当不同于写作分支。(一个推荐的方式是把master作为写作分支,另外使用public分支作为部署分支。)值得注意的是,hexo deploy并不会对本地或远程的写作分支进行任何操作,因此依旧需要手动推送写作分支的所有改动以实现版本控制。此外,如果您的Github Pages需要使用CNAME文件自定义域名,请将CNAME文件置于写作分支的source_dir目录下,只有这样hexo deploy才能将CNAME文件一并推送至部署分支。

发布流程 - V1

  1. 编译:hexo g
  2. src分支代码提交
  3. xshell同步到阿里云服务器
  4. 服务器端git提交
  5. 等待2min左右,页面展示

hexo 博客搭建

安装

node

node -v
npm -v

git

git version

github

个人仓库
username.github.io

hexo

1
2
npm install -g hexo-cli
hexo version

创建

hexo 命令

hexo version

显示 Hexo 版本。

hexo init [folder]

新建网站。如果没有设置 folder ,Hexo 默认在目前的文件夹建立网站。

hexo g

生成静态文件。

1
2
hexo generate
hexo g

监控文件变动,实时编译

1
2
hexo generate --watch
hexo g -w

生成静态文件后立即部署网站

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×