欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Ubuntu下用hexo搭建github博客教程

程序员文章站 2022-07-24 09:11:09
基础配置 安装git $ sudo apt install git-core # 已安装请略过 并且在你的github主页创建一个repo,命名为username.git...

基础配置

安装git

$ sudo apt install git-core # 已安装请略过

并且在你的github主页创建一个repo,命名为username.github.io,比如对我来说就是yucicheung.github.io。本帖不细述,请参考github page基本指南。

安装nodejs

$ wget -qO- https://raw.github.com/creationix/nvm/master/install.sh | sh

重新开启终端使nvm命令生效。

$ nvm ls-remote # 查看所有可用版本
$ nvm install v8.10.0 # 选择最新稳定版本
$ node -v #显示v8.10.0表示安装成功

安装hexo

$ hexo init hexo

hexo安装所需的新文件。

$ cd hexo
hexo $ npm install

改变hexo/文件夹下的_config.yml的一些简单配置包括title,’author’等,之后就可以用以下命令预览。

$ hexo server # 默认端口4000

Notice:如果端口4000被占用,或者更换端口预览,或者解除占用。

# 方法1:更换端口
$ hexo server -p 5000
# 方法2:解除端口占用
$ lsof -i:4000
$ kill -9 PID

更改主题为yelee

首先要在hexo-themes中选择一个喜欢的主题,从git上clone到本地themes/文件夹下并命名为yelee。

$ cd hexo/
$ git clone git@github.com:MOxFIVE/hexo-theme-yelee.git themes/yelee

然后更改hexo/_config.yml中theme: landscape改为theme: yelee,themes/lanscape文件夹可删除。

再用hexo server或hexo s就可以预览为新主题了。

具体theme中相应主题配置应参考对应theme的官方文档,如yelee的官方文档。

部署到网站

说明:网站的部署其实就是生成静态文件,hexo下所有生成的静态文件会放在public/文件夹中,所谓部署deploy其实就是将public/文件夹中内容上传到git仓库yucicheung.github.io中。

要准备将静态文件部署到自己的git主页,首先需要安装一个用于部署的插件hexo-deployer-git,这个插件可以自动将public/文件中内容上传到master下(即用于生成github.io界面的文件)。

如果不装插件,也可以手动进行文件复制。

npm install hexo-deployer-git --save

然后在hexo/_config.yml的deploy部分配置以下语句。

$ hexo generate # 或hexo g
$ hexo deploy # 或hexo d

deploy时需要github的账户和密码,自动上传文件完成部署。
Tips:网站再次进行部署时,还需要清理public文件夹内容,重新生成部署,用以下命令。

$ hexo clean
$ hexo g
$ hexo d

管理hexo文件

最好的办法是在username.github.io主页创建两个分支,一个master分支(由deployer管理),一个hexo分支(我们自己管理)。

在把自己的username.github.io仓库克隆到本地后,cd username.github.io,进行以下操作。

创建hexo分支并切换到该分支。

$ git checkout -b hexo

将hexo/文件夹下所有内容拷贝到username.github.io/hexo/下。

$ cp -r ~/hexo/ ~/yucicheung.github.io/

将修改加入并push到分支hexo。

$ git add .
$ git commit -m "commet"
$ git push origin hexo

这样文件管理就很方便了。

第三方部署

因为第三方部署跟主题有很大关系,而主题文档中说明得比较清楚,我主要讨论一下文档中说明不清的Google站长认证问题。

Google站长验证

Google验证,会提供给你一个html文件,拷贝至theme下的source文件中,在generate的时候会原样生成。

Tips:同理,如果有每次生成都要保存的html文件,请都放置在此文件夹下。如果是README.md文件,请在hexo/_config.yml中配置skip_render: README.md。

文章的发表

先生成draft,然后发表。

$ hexo new draft "title" #在source/_draft下生成md文件
$ hexo publish "title"

草稿默认不会显示在页面中,可在配置文件中把render_drafts 参数设为 true 来预览草稿。

直接生成新文章。

$ hexo new "title" # 自动生成title.md在_posts下

如果要删除文章的话在source下删除文章后,重新生成和部署就可以了