# hexo **Repository Path**: taoyouyou/hexo ## Basic Information - **Project Name**: hexo - **Description**: taoyouyou的个人独立博客 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-03-18 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## [taoyouyou的个人独立博客](https://taoyouyou.gitee.io) 关于hexo以及安装hexo可以详见[官方文档](https://hexo.io/zh-cn/docs/index.html) ### 关于hexo Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。 ### 安装 安装之前需要确保安装了node(Node.js 版本需不低于 8.10,建议使用 Node.js 10.0 及以上版本)和git,所有必备的应用程序安装完成后,即可使用 npm 安装 Hexo。 ``` npm install -g hexo-cli ``` ### 建站 ``` hexo init // hexo初始化项目 cd // 进入新建的文件夹 npm install // 安装依赖 ``` 新建完成后指定的文件夹目录如下: ``` . ├── _config.yml // 网站配置文件,配置字段可详见[官网配置详解](https://hexo.io/zh-cn/docs/configuration) ├── package.json ├── scaffolds // 模版 文件夹。当您新建文章时,Hexo 会根据 scaffold 来建立文件 ├── source // 资源文件夹是存放用户资源的地方。Markdown 和 HTML 文件会被解析并放到 public 文件夹,而其他文件会被拷贝过去。 | ├── _drafts | └── _posts └── themes // 主题 文件夹。Hexo 会根据主题来生成静态页面 ``` ### 启动 Hexo 3.0 把服务器独立成了个别模块,您必须先安装 hexo-server 才能使用。 ``` npm install hexo-server --save ``` 安装完成后,输入以下命令以启动服务器,您的网站会在 : 下启动。在服务器启动期间,Hexo 会监视文件变动并自动更新,您无须重启服务器。 ``` hexo server -p 5000 ``` 开启命令后可以在本地预览 ### 写作 ``` hexo new [layout] // 发布一篇新的文章或者新的页面 ``` Layout: Hexo 有三种默认布局:post、page 和 draft。在创建者三种不同类型的文件时,它们将会被保存到不同的路径;而您自定义的其他布局和 post 相同,都将储存到 source/_posts 文件夹。 Title: Hexo 默认以标题做为文件名称,但您可编辑 new_post_name 参数来改变默认的文件名称,举例来说,设为 :year-:month-:day-:title.md 可让您更方便的通过日期来管理文章。 通过命令新建一篇文章后,会在 source 文件夹内响应的布局(_post)文件夹下生成以.md后缀结尾的文章,可以直接在这里通过markdown语言完成一篇文章 ### 生成 hexo中使用generate命令可以生成静态文件快速而且简单。 或者可以加上watch参数,在监听文件变动的同时生成静态文件 ``` hexo generate --watch ``` 完成后部署 您可执行下列的其中一个命令,让 Hexo 在生成完毕后自动部署网站,两个命令的作用是相同的。 ``` hexo g -d hexo d -g ``` ### 部署 通过generate命令编译生成public静态文件夹以后,可以通过github pages服务,可以为您的静态文件托管一个web站点。 Git Pages 一个支持Jekyll、Hugo、Hexo静态网站的服务。因为网络的原因,这里以国内git服务商gitee为例简单介绍一个如何托管个人的web站点,生成一个能用于预览的网址。首先需要将生成的public项目先托管在gitee中。 Hexo 提供了快速方便的一键部署功能,让您只需一条命令就能将网站部署到服务器上。 ``` hexo deploy ``` 在开始之前,您必须先在 _config.yml 中修改参数,一个正确的部署配置中至少要有 type 参数,例如: ``` deploy: type: git ``` 您可同时使用多个 deployer,Hexo 会依照顺序执行每个 deployer。 ``` deploy: - type: git repo: - type: heroku repo: ``` 在配置好_config.yml中配置好远程仓库地址后该不能直接用deploy命令部署,需要先安装[hexo-deployer-git](https://github.com/hexojs/hexo-deployer-git)插件,git插件是专门用于hexo站点部署的Git部署插件,所以正确的步骤是 1,执行安装命令安装hexo-deployer-git ``` npm install hexo-deployer-git --save ``` 2,修改配置文件,为站点配置远程仓库地址 ``` deploy: type: git repo: <repository url> #https://bitbucket.org/JohnSmith/johnsmith.bitbucket.io branch: [branch] message: [message] ``` 3, 生成站点文件并推送至远程库 ``` hexo g -d // 让 Hexo 在生成完毕后自动部署网站 ``` 当执行 hexo deploy 时,Hexo 会将 public 目录中的文件和目录推送至 _config.yml 中指定的远端仓库和分支中,并且完全覆盖该分支下的已有内容。 4,在提供github或者gitee上有了托管的public目录文件的仓库,在仓库的服务页面找到Pages服务 ![](https://gitee.com/taoyouyou/taoyouyou/raw/master/assets/photos/git-pages.png) 这里为了让站点路径以 https://<用户名>.gitee.io 的形式访问,最好把你的远程仓库的名字以你的用户名命名。 点开Git Pages服务后首先会要求你填写部署的分支,以及部署的目录,并且明确提示如果目录为空的话就会部署整个仓库 点击确定按钮后会为这个分支以及目录开始静态网站服务,通过 https://<用户名>.gitee.io 即可以访问你的博客了 ### 基本命令行 * 发布一篇文章 hexo new post "myFirstPost" * 编辑文章 vi myFirstPost.md * 开启本地服务 hexo server -p 5000 简写 hexo s // 默认端口为3000 * 使用 Hexo 生成静态文件 hexo generate 或者 hexo g * 完成后部署 hexo generate --deploy hexo deploy --generate 简写 hexo g -d hexo d -g ### 自定义主题 如果您对hexo默认的主题并不满意,您可以使用其他人写好的hexo主题 以下是github星标数比较高的几款hexo主题 1. [Indigo](https://www.imys.net/),项目地址:[https://github.com/yscoder/hexo-theme-indigo](https://github.com/yscoder/hexo-theme-indigo) <!-- ![](https://img-blog.csdnimg.cn/20190816091540982.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pnZDgyNjIzNzcxMA==,size_16,color_FFFFFF,t_70) --> 2. [Butterfly](https://jerryc.me/),项目地址:[https://github.com/jerryc127/hexo-theme-butterfly](https://github.com/jerryc127/hexo-theme-butterfly) <!-- ![](https://img-blog.csdnimg.cn/20190816091627682.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pnZDgyNjIzNzcxMA==,size_16,color_FFFFFF,t_70) --> 3. [Melody](https://molunerfinn.com),项目地址:[https://github.com/Molunerfinn/hexo-theme-melody](https://github.com/Molunerfinn/hexo-theme-melody) <!-- ![](https://img-blog.csdnimg.cn/20190816091738576.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pnZDgyNjIzNzcxMA==,size_16,color_FFFFFF,t_70) --> 4. [Nexmoe](https://nexmoe.com/),项目地址:[https://github.com/nexmoe/hexo-theme-nexmoe](https://github.com/nexmoe/hexo-theme-nexmoe) <!-- ![](https://img-blog.csdnimg.cn/20190816091825224.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pnZDgyNjIzNzcxMA==,size_16,color_FFFFFF,t_70) --> 5. [Clover](https://esappear.github.io/clover/),项目地址:[https://github.com/esappear/hexo-theme-clover](https://github.com/esappear/hexo-theme-clover) <!-- ![](https://img-blog.csdnimg.cn/20190816091859750.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pnZDgyNjIzNzcxMA==,size_16,color_FFFFFF,t_70) --> 6. [Yilia](http://litten.me/),项目地址:[https://github.com/litten/hexo-theme-yilia](https://github.com/litten/hexo-theme-yilia) <!-- ![](https://pic1.zhimg.com/80/57291a4ee84ce548460d5d226a52a2d8_1440w.jpg) --> 如果您对于博客的主题有自己想法,那么您可以自定义生成一个全新的博客主题。 创建自定义的主题详见官方文档[主题](https://hexo.io/zh-cn/docs/themes) 在这里我的博客使用的主题是上述最后一个主题Yilia, 使用第三方开源的主题的很简单, 1. 只需要将该主题clone在本地,放入hexo项目目录中的theme文件夹中。 2. 然后在在根目录的_config.yml的theme中填入该主题对应的名字。