Github-Hexo创建博客
环境准备
安装Hexo
打开cmd命令行,输入
1 | D: |
初始化Hexo
1 | hexo init blog |
测试运行
1 | hexo generate #可简写为hexo g 生成静态文件,会在当前目录下生成一个新的叫做public的文件夹 |
查看效果
打开浏览器,输入http://localhost:4000
切换主题
在blog目录下运行
1 | git clone https://github.com/iissnan/hexo-theme-next themes/next #将next主题下载到themes文件夹下 |
打开blog目录下的配置文件_config.xml,修改
1 | theme: next #next即为主题名称 |
启用主题
1 | hexo clean #清理hexo缓存 |
主题的其他设置见next主题官网.
创建Github Pages
打开blog目录下的配置文件_config.xml,修改
1 | deploy: |
部署到Github Pages
执行命令
1 | hexo d |
完成部署,过程中需要github账号/密码
保存Hexo博客源文件
- 在GitHub新建仓库blog
- 删除blog目录和主题目录下的.git文件夹(如果存在)
- 修改blog目录的.gitignore文件,加入
1
2/.deploy_git
/public - 同步到Github中
1
2
3
4
5
6
7
8
9
10
11
12git init
git add .
# 若出现`warning: LF will be replaced by CRLF in`
# 执行:
# git config --global core.autocrlf false
git commit -m "first commit"
git remote add origin https://github.com/jonesun/jonesun.github.io.git
git push -u origin master
# 此时可能会出错failed to push some refs to git 出现错误的主要原因是github中的README.md文件不在本地代码目录中,可以通过如下命令进行代码合并
# git pull --rebase origin master
# 此时再执行语句
# git push -u origin master
日常操作
- 检查更新,将本地博客源文件更新至最新版本
1
git pull
- 新建文章
1
hexo new <新的文章>
- 编辑文章
打开blog\source_posts文件夹,使用自己喜欢的Markdowm编辑器进行编辑保存,这里推荐一个在线编辑器作业部落
运行查看1
2hexo g
hexo s - 同步Hexo源文件
1
2
3
4git add . #不添加被删除的文件,`git add -A`会添加所有修改.
git commit -m "更新描述"
git remote add origin https://github.com/jonesun/blog.git
git push origin master - 部署
1
hexo d
新电脑配置
安装nodejs和git
安装Hexo
1
npm install -g hexo-cli
下载博客源文件
1
git clone https://github.com/jonesun/blog.git
安装模块
1 | rm -rf node_modules && npm install --force |
- 运行部署
1
2
3hexo g
hexo s
hexo d
博客提交搜索引擎收录
请确保Next主题版本为NexT-7.1.2及以上
百度和Google收录
- 安装百度和 Google 的站点地图生成插件
1 | npm install hexo-generator-baidu-sitemap --save |
- 修改配置文件(最外层的_config.yml), 可搜索sitemap字段(默认都有,没有再添加)
1 | # 自动生成sitemap |
hexo g 生成后进入 public 目录,你会发现里面有 sitemap.xml 和 baidusitemap.xml 两个文件,这就是生成的站点地图。里面包含了网站上所有页面的链接,搜索引擎通过这两个文件来抓取网站页面:
sitemap.xml 用来提交给 Google
baidusitemap.xml 用来提交给百度
Google Search Console
- 进入 Google Web Master Search Console,首先需要进行站点验证,在主题配置文件_config.yml 把验证代码写上:
1 | google_site_verification: 7MWmpu7Y_liZprzsvd1MxYuG1tRYQ7V1eK9_rLcHmB0 |
通过hexo g 和 hexo d部署后,再点击Google Search Console需要的验证
验证是否收录
打开谷歌搜索,输入:
1 | //换成自己的域名,查看结果 |
百度站长平台
首先注册百度账号,完善个人信息,然后打开站长平台, 添加网站,得到验证代码后,在主题配置文件_config.yml 把验证代码写上:
1 | baidu_site_verification: code-SeFMiHxes9 |
- 通过hexo g 和 hexo d部署后,再点击验证,等待结果
链接提交
安装插件
1 | npm install hexo-baidu-url-submit --save |
在主题配置文件_config.yml 加入:
1 | baidu_url_submit: |
hexo 创建草稿
使用草稿新建的文章就不会发布,会存放在/source/_drafts路径下:
1 | hexo new draft <title> |
发布草稿,会把/source/_drafts下的文章移到/source/_posts下:
1 | hexo publish <title> |
显示字数及阅读时长
安装hexo-symbols-count-time
1 | npm install hexo-symbols-count-time --save |
next主题中_config.yml中配置
1 | symbols_count_time: |
如果显示为阅读时长NaN:aN, 执行 hexo clean即可
在 Hexo 更新至 5.x 版本,Next 更新至 7.x 版本后,会出现文章的中文目录点击跳转失效的 bug, 参见Github Issues
排版布局和翻译风格上可以参考了阮一峰老师的中文技术文档的写作规范
更多Hexo相关配置,可参考官网