您的位置:首页 > 编程语言

Windows下使用hexo+github搭建个人博客

2016-11-29 15:05 711 查看

前期准备

下载安装Node.js

前往https://nodejs.org/en/下载并安装Node.js.

下载并安装Git,安装完成后,在命令行窗口输入node -v,如果不能打印当前node版本号即不识别node命令,则请将node的安装目录添加到系统环境变量。

前往https://git-scm.com/downloads下载对应平台的git安装包,同理测试git –version ,如果不识别命令,请将git安装目录添加至系统环境变量。

安装hexo

在命令行输入 npm install hexo (npm是node的包管理工具,如果此处无法识别npm命令,请检查node的环境变量配置或命令行进入到node的安装目录执行次命令。)

创建及配置博客

初始化

命令行cd 进入到你要放置博客的目录,执行hexo init,此命令会下载相关依赖及配置。

生成页面

执行 hexo generate 或 hexo g, 查看当前目录,public 目录存放你的博客文件,包括html、css、js等,而source目录存放我们所要关注的markdown源文件,你可以在此目录创建你的博客页面,使用清爽的markdown语法书写你的个人博客,当然你也可以使用 hexo new page pagename创建新的页面,hexo g命令会将此目录下的markdo文件转换为网站页面。

本地测试

执行hexo server,启动本地服务器,然后在浏览器地址栏输入localhost:4000,即可看到你的博客页,平时我们编辑完博客后可在本地查看,然后再提交到远端(马上会讲到)。

主题配置

知乎问题,下有人列出了很多主题及github star排名,你可以去选择你喜欢的主题并克隆到本地,然后将其放置到你的站点themes目录中,修改config.yml文件theme属性为你想使用的主题即可切换主题,详细设置请参照该主题的文档。

将博客发布到github

创建github账号并创建名为your_user_name.github.io的仓库。

建立本地博客与远端仓库的联系

进入你本地博客目录,打开_config.yml文件,将最后修改为:

deploy:
type: git
repo: https://github.com/your_user_name/your_user_name.github.io.git branch: master


注意:deploy等标签后都要有空格。

将博客发布到远端

执行npm install hexo-deployer-git –save

执行hexo clean;hexo g

执行hexo deploy或hexo d,如果不出意外的话,会弹出输入用户名和密码的对话框,成功后控制台会打印Deploy done: git,然后打开浏览器输入https://your_user_name.github.io,即可打开你的个人博客站点。

注意: Windows用户可能出现错误:

bash: /dev/tty: No such device or address
error: failed to execute prompt script (exit code 1)
fatal: could not read Username for 'https://github.com': Invalid argument
FATAL Something's wrong. Maybe you can find the solution here: http://hexo.io/docs/troubleshooting.html


此时,你需要摒弃cmd命令行和git shell,打开git bash命令行,重新执行上述命令。

PS:

此种方式在你每次执行hexo d部署代码到远端时,都会弹窗请求输入用户名和密码,如果想免密提交的话,请将config.yml文件中,deploy节点修改为:

deploy:
type: git
repo: git@github.com:your_user_name/your_user_name.github.io.git
branch: master


此种为ssh的方式,所以当然需要你添加ssh公匙到你的github账户,具体操作请看Github文档。

执行hexo d 无反应

此时请打开对应目录下的config.yml,查看文件最后deploy节点是否配置正确。

在config.yml文件中,可以配置你的站点的标题、描述、作者、主题及语言等一系列信息。

这是我搭建的博客地址https://metal626.github.io/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: