本文转自:http://www.leyar.me/backup-your-blog-to-github/
前言
这个博客一开始是部署到 GitHub 的,但是每次 Deploy 只是将生成的 html 文件部署进去。根目录文件还是在本机子,这样在换机子之后还得把整个 hexo 目录打包到新电脑,比较麻烦。我前面的操作方式是将真个根目录 push 到同仓库的一个 blog 分支下,当时没有记录操作方法。恰逢自己的生活博客也迁移到了 hexo 上,计划也将他备份到 GitHub,这里将过程在这里记录一下。
操作
前提
已创建有 GitHub 仓库,并且已使用 hexo-deployer-git 部署到 master 分支。
如果不满足请自行 google hexo 部署到 GitHub 的操作方法。
过程
首先在官网新建一个仓库,比如我新建的仓库名为ileyar.com
在本地 hexo 根目录下,初始化 git 仓库1
git init
创建并切换到名为“hexo” 的分支1
git checkout -b hexo
添加 README,并填写相关的说明,此步骤可略过1
git add README.md
创建忽略文件 .gitignore
1
vi .gitignore
按需添加如下内容:1
2
3
4
5
6
7
8.DS_Store
Thumbs.db
db.json
*.log
.deploy*/
node_modules/
.npmignore
public/
上面最后一行忽略 public 目录,已经被 hexo 插件同步到 master 分支里,因此不需要再同步,deploy 是 hexo 的 git 配置存放目录,也不需要同步。其他内容可选择忽略也可以选择同步。
添加内容到仓库并提交到远程仓库1
2
3
4git add . # git add -A
git commit -m "first commit"
git remote add origin git@github.com:iLeyar/ileyar.com.git # 后面仓库目录改成自己新建的。
git push -u origin hexo
写在后面
按照以上的步骤就进行了 hexo 源文件的初次备份。
以后每次修改了内容之后,都可通过一下几条命令实现同步。
1 | git add . |
同步
要在一台新的机子上写博客时,只需以下几步:
1.新建blog
文件夹
2.在此文件夹下,初始化git仓库:git init
3.为本地仓库添加远端仓库:git remote add origin https://github.com/iChenwin/ichenwin.github.io.git
4.切换至hexo
分支:git checkout -b hexo
5.获取hexo
分支源文件:git pull origin hexo
6.然后就是写博客,并将.md
博客文件放至_posts
文件夹,然后添加修改到本地仓库:git add .
7.提交更改:git commit -m "写了一篇博客"
8.推至远端仓库hexo
分支:git push origin hexo
9.至此,已经完成了博客的撰写并修改了远端仓库的博客源文件,然后使用hexo g
和hexo d
更新博客就OK啦!
另外刚在 stackoverflow 上看到一个关于 git add .
, git add -u
以及 git add -A
的区别。
git add -A stages ALL
git add . stages new and modified, without deleted
git add -u stages modified and deleted, without new