Hexoのバージョンを3.0.0にアップデートしてみた

hexo をアップデートした話

hexoのバージョンが3.0.0へアップデートされたので、早速アップデートしてみた。
そしたら動かなかった部分がいくつかあったので、メモ

Hexoをアップデートする

まず、npmをアップデートしたかったので、Homebrewをアップデートしたのち、npmをアップグレードしました。

1
2
$ brew update
$ brew upgrade npm

で、Hexoをupdateしたコマンドは

1
$ npm update hexo-cli -g

をしました。

差分

Gitで管理をしていたので、package.jsonのdiffをとってみた。
個人的に入れているpackageも入っていますが、基本的にかなり増えたように見えます。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
"name": "hexo-site",
- "version": "2.8.3",
+ "version": "0.0.0",
"private": true,
+ "hexo": {
+ "version": "3.0.0"
+ },
"dependencies": {
- "hexo-generator-feed": "^0.2.1",
- "hexo-generator-sitemap": "^0.2.0",
- "hexo-renderer-ejs": "*",
- "hexo-renderer-marked": "*",
- "hexo-renderer-stylus": "*"
+ "hexo": "^3.0.0",
+ "hexo-deployer-git": "0.0.3",
+ "hexo-generator-archive": "^0.1.0",
+ "hexo-generator-category": "^0.1.0",
+ "hexo-generator-feed": "^1.0.1",
+ "hexo-generator-index": "^0.1.0",
+ "hexo-generator-sitemap": "^1.0.1",
+ "hexo-generator-tag": "^0.1.0",
+ "hexo-renderer-ejs": "^0.1.0",
+ "hexo-renderer-marked": "^0.2.5",
+ "hexo-renderer-stylus": "^0.2.0",
+ "hexo-server": "^0.1.2"
}
}

初期設定をする

Upldateしてみたら、いくらhexo sとか打ってもコマンドが実行されず、Usageが出るだけ。。。
(もちろんこのブログのディレクトリ上で、です)

がむしゃらにやっていたら

1
hexo init

をしてしまって、するとエラーメッセージが変わった。
(このコマンドは、カレントディレクトリにHexoに必要なファイル群を作成してしまうので、注意)

1
ERROR Try running: 'npm install hexo --save'

と言われたので

1
$ npm install hexo --save

をしてみる。
そして、今いるディレクトリ上で

1
$ npm install

を実行(なぜこの情報に辿り着いたとかは後で追記するかもです)
これで動きました!(他にも必要な作業があったかもしれないです)
ただ、hexo generateを実行すると、sidebarの辺りとcss/style.cssの辺りでエラーが出ていました。
あんまり関係ないのも含めていろいろパッケージをインストール
(多分関係あるのはhexo-renderer-markedhexo-generator-sitemapかな)

1
2
3
4
$ npm install hexo-deployer-git --save
$ npm install hexo-renderer-marked --save
$ npm install hexo-generator-sitemap --save
$ npm install hexo-generator-feed --save

バージョンを上げたら、ブログのディレクトリを再度initしたりパッケージをインストールする必要があるんですかね。

3.0.0で変わったところ

私は、GithubのGithub Pagesにデプロイしているのですが、書き方が変わったのでメモ

./_config.yml

1
2
3
4
5
6
exclude_generator:
# Deployment
## Docs: http://hexo.io/docs/deployment.html
deploy:
- type: github
+ type: git

ちょっとわかりにくいですが、githubが、gitに変わりました。
デプロイ先とかは変わらずで、これでデプロイされるようになりました。