换了一台机器 (Legion Y),之前的surface留着做笔记本,不跑东西了。但是由于开学之后事情比较多,一直没有迁移博客。这两天稍闲下来,把这事情做了。我对CS的东西以前不感兴趣也不了解(比如说不知道nodejs是啥),所以这事情做得很不求甚解、不干净(GitHub报了一堆dependabot alerts),不过我要求也不高,现在在新电脑上能继续写,这就挺好。现在把这个过程记录下来。
我是照着这里做的。首先在GitHub新建一个hexo分支,然后设为default。我们的打算是,用hexo来存放(deploy前的)网页原始文件,用之前的master分支存放生成的静态网页。为了实现这个目的,我们把以hexo为默认分支的repo给clone到本地,把除了.git文件夹之外的部分删光,然后把本地的博客源文件里面.deploy_git以外的部分全复制过来。
注意,如果你之前克隆过theme中的主题文件,那么应该把主题文件中的
.git
文件夹删掉,因为git不能嵌套上传,最好是显示隐藏文件,检查一下有没有,否则上传的时候会出错,导致你的主题文件无法上传,这样你的配置在别的电脑上就用不了了。
这段我当时给忽略了,结果搞出问题,我不得不用个硬盘把theme文件给拷到新电脑上。
新电脑的话,
- 安装git
1
sudo apt-get install git
- 设置git全局邮箱和用户名
1 2
git config --global user.name "yourgithubname" git config --global user.email "yourgithubemail"
- 设置ssh key
1 2 3 4 5
ssh-keygen -t rsa -C "youremail" #生成后填到github和coding上(有coding平台的话) #验证是否成功 ssh -T git@github.com ssh -T git@git.coding.net #(有coding平台的话)
- 安装nodejs
1 2
sudo apt-get install nodejs sudo apt-get install npm
- 安装hexo
1
sudo npm install hexo-cli -g
但是已经不需要初始化了,
直接在任意文件夹下,
1
git clone git@………………
然后进入克隆到的文件夹:
1 2 3
cd xxx.github.io npm install npm install hexo-deployer-git --save
生成,部署:
1 2
hexo g hexo d
然后最好定期sync一下repo里面的hexo部分:
Tips:
- 不要忘了,每次写完最好都把源文件上传一下
1 2 3
git add . git commit –m "xxxx" git push
- 如果是在已经编辑过的电脑上,已经有clone文件夹了,那么,每次只要和远端同步一下就行了
1
git pull
弄好之后,我又遇到一个问题,就是数学公式显示的问题。我是从这里解决的。数学公式的显示出错主要就是markdown渲染器的问题,得先换掉默认的那个渲染器:
|
|
然后解决语义冲突的事情(例如,将_或*识别为斜体语法)。找到node_modules/kramed/lib/rules/inline.js文件,将inline变量改为
|
|
即可(虽然实际上只改了两行)。
然后为了让新设定生效,需要hexo clean一下,然后hexo g -d部署即可。