最近出了一些事,想了想以后的路,发现我最想做的还是【Follow My Master】. 那就从换博客开始吧。计划是两到三周出至少一篇小研究结论。这一篇,就从在Github上搭一个博客开始吧。我的笨蛋Master话比较少,写的攻略总是很简略,有时候我都看不懂,还是用自己的语言再记录一遍好了。CSDN新改的编辑器还能写MarkDown吗?
1. 什么是Hexo
Github不提,世界上最大的同性交友网站,程序员应该必知了吧。Github 。
那么什么是Hexo呢?用Master的话说,这是一个可以简单搭一套博客的框架。至于为什么选Hexo,不知道,我没研究过别的,只知道跟着他先学就好了。说不定以后玩的多了会去了解别的,目前,就先用这个吧。 Hexo官网
2. 起手预备工作
要用这个东西,有一些是前置准备工作。Master的电脑是Mac,我的是Windows,据说大同小异,按查的攻略来说,Mac比Windows还要简单点。
· 先有两个要安装的:1. Node;2. Git。具体安装攻略不讲,这个随便找个攻略傻瓜式下一步就可以解决。
如何判断这两个东西安装完成?如果傻瓜安装的话,对于Node,在命令行输入node -v 和 npm -v 可以分别打印出版本号,对于Git,随便在什么目录点一下鼠标右键可以出现 Git Bash 和 Git GUI 菜单,或者命令行输入 git --version 显示版本号。
· 下一步要搞一个Hexo框架回来了。
Node安装完成后,npm命令就可用了,不做更多设置,新手傻瓜操作,就直接使用。参照hexo官方文档,这里要执行的是npm install -g hexo-cli ,但是没有解释这个-g的意思,我搜了一波,在npm install的官方文档里,查到-g是--global的意思,全局安装应该会直接配好环境变量吧。省事,照抄。然后出了个大事,Hexo的东西全部放在了C:\Users\Point\AppData\Roaming\npm\node_modules\hexo-cli 这个目录底下。。。仔细看了看,发现npm命令安装的都在这里,所以如果要更改目录,可能需要更改npm的设置,新手起手,不看了,能用就行,弯路绕太多万一回不来就不好了。
By the way,这个Hexo的官方文档很萌啊,全部流程都写了,在安装git的提示里还写了这样一句“由于众所周知的原因,从上面的链接下载git for windows最好挂上一个代理,否则下载速度十分缓慢。也可以参考这个页面,收录了存储于百度云的下载地址。”哈哈哈哈哈众所周知的原因~~~~
3. 开启博客的框架搭建
搞事情啦,找个目录,准备放你的工程。我建的目录叫D:\PointGithub\HexoBlog,然后在cmd命令行里cd跳转过去,输入 hexo init 命令,开启初始化步骤。这个命令完成后会提示“INFO Start blogging with Hexo!”,然而没完,还需要再执行一个 npm install 命令。这个命令执行完之后,目录会有这些东西:①_config.yml文件存放网站的配置信息,②package.json文件存放项目信息,③scaffold目录存放模板,④source目录存放用户资源,⑤themes目录存放主题。
然后偷瞄一下.gitignore文件,我特好奇这种东西,这东西能大概看出来一个项目里什么是无关的玩意儿。官方文档里还有写一些会被自动忽略自动处理的文件,我不完全明白,用的时候再说,先复制过来:
资源文件夹是存放用户资源的地方。除 _posts 文件夹之外,开头命名为 _ (下划线)的文件 / 文件夹和隐藏的文件将会被忽略。
Markdown 和 HTML 文件会被解析并放到 public 文件夹,而其他文件会被拷贝过去。
OK以上指引在Hexo官方文档里都有写,所以不建议你们看 My Master的攻略,对好奇宝宝来说太特么难懂了。
顺便吐槽一下新版CSDN的编辑器,恶心死了。。。所以本宝宝不玩了,搭好立马转。
4. Hexo,启动!
还是在项目目录下,输入hexo server命令可以启动到4000端口。我偷摸测了一下,在其他目录跑这个命令跑不起来,所以这个命令应该是启动当前目录下的服务。以及按我的经验……如果你有很多个用hexo搭的玩意儿,你可能需要改些端口免得冲突,这个改端口的命令是hexo server -p 端口号。不试了,先把这个玩起来。
5. 我们去Github吧!
其实启动完成之后,正常操作是把页面先改成自己的,但是我比较习惯准备工作做完再仔细研究高级玩法,好歹要先跑通不是,所以这一步,我先把这玩意放到github去,后面的更改慢慢再玩。
这一步,笨蛋Master两句话带过,所以我看他的博客的时候一直比较懵逼,本来github就是新手玩不熟,他还没耐心写,那我自己写,哼。查一波攻略,然后步骤如下:
1. 先在github建一个repo,名字是你的github昵称.github.io。
2. 把项目的public目录变成一个git仓库然后传上去。常规操作不解释。这里要注意一点是,一般的项目可以不配置SSH Key,直接用账号密码上传,这玩意不行,必须配置。然后用My Master的话,这东西传到git仓库之后剩下的事hexo会自动做。这一步曾经失败了无数次,找不到原因,最终使用重装大法,重装了本机的git,解决了问题。
3. 后面传完看一眼你的github的repo setting里往下翻有个Github Pages,那里给了一个网址,如果没有网址,看到下面这个报错,是因为hexo里有个md的标签github不认得。
“Your site is having problems building: The tag fancybox
on line 77 in themes/landscape/README.md
is not a recognized Liquid tag. For more information, see https://help.github.com/articles/page-build-failed-unknown-tag-error/.”
坑爹的/themes/landscape/README.md文件77行有个玩意github认不出来。。。简单粗暴的删掉整个文件内容。。。
删完之后网址就出现了,点进去,出现和本机部署以后一样的页面。
4.以后的更新。更改内容后,需要在本机执行一下 hexo d 命令和 hexo g 命令,进行部署和提交。我不记得这步在什么时候做了,反正想做的时候都可以重新做一次吧。
完成,以后会把博客搬到那边去写了。