需要同步的内容

Hexo 根目录下的:

1
2
3
4
5
scaffolds/
soucre/
themes/
_config.yml
package.json

解释一下,

  • _config.yml 是站点配置文件;
  • source/ 中是文章源文件(.md);
  • themes/ 是主题文件夹,里面还有主题配置;
  • scaffolds/ 里放着文章模板;
  • package.jsonnode.js 依赖。

其它的如 db.jsonpublic/ 在运行 hexo clean 后就没了,是临时文件,不需要同步(而且文件很大)。
至于 node_modules/package-lock.json ,只要 package.json 在就可以整出来,不需要同步。

也就是说:用 U 盘拷贝博客的话只要拷贝这些就行了。

储存

  1. 直接用 U 盘 copy
  2. Google Drive / One Drive … 同步该文件夹(该忽略的忽略)
  3. GitHub: 可以开一个新的分支来存,或者开个新仓库(这样有一个好处,你可以把仓库设为私有的)。具体见 在 GitHub 上同步

到另一台电脑

  1. 安装 node.js(包括 npm) 和 git,安装 Hexo,这与第一次建站时一样的,不多说了。

  2. 安装插件,到博客根目录下(npm 会根据 package.json 安装)

    1
    npm install

    如果报错,看看是不是因为权限不够版本不够

    前者 Windows 下以管理员身份运行,Linux 下加 sudo
    后者 npm -g install npm

在 GitHub 上同步

直接用 U 盘 copy 或 Google Drive / One Drive 同步自然方便。但分支管理并不友好。

先在 GitHub 创建一个空仓库,克隆下来:

1
git clone <git-remote>

把博客根目录里的文件全拷贝进去。

创建 .gitignore,写不需要同步的文件、文件夹

1
2
3
4
5
node_modules
package-lock.json
public
db.json
.deploy_git

需要注意,务必将 themes/ 下主题文件夹中的 .git/ 删掉,不然在 Git 提交时这个文件夹可能会被忽略。

然后提交即可:

1
2
3
git add .
git commit -m "Site Source Update"
git push

到另一台电脑上,git clone 克隆仓库就行了。

之后两地同步:在修改的电脑上提交更改(跟上面一样),在另一个电脑上拉取修改:

1
git pull origin

一头雾水?自行百度。

不会 Git 的话:来看看 Git - OI Wiki (这是篇 Git 入门好文),关于 Git 分支管理,这个网站会教会你 Learn Git Branching