将博客的源文件(非hexo生成的文件)托管到Github上,方便同步和控制版本。
- 在github上建立一个新的repository,名称blog
- 在本地进入blog文件夹,使用命令
git init
创建仓库 - 设置远程仓库地址,并更新
1 | $git remote add origin git@github.com:imzlp/blog-source.git |
- 修改.gitignore文件(如果没有,请创建),在里面加入public/和.deploy/,因为这两个文件夹是每次generate和deploy都会更新,对我们没用,因此忽略这两个文件的更新。
- 使用命令git add .,将所有文件提交到缓存区。
- 使用命令git commit -m “add all files” ,将这些文件提交到本地仓库。
- 使用命令git push origin master,将本地仓库的改动推送到github仓库。
将源文件克隆至本地
1 | $git clone <address> |
写文章后,提交到远程仓库
1 | //将所有文件提交到缓冲区 |
同步远程仓库到本地
1 | $git pull |
或者
1 | $git fetch |
将博客和源程序推送至同一仓库的不同分支
因为博客源程序是部署在本地电脑上的,所以换台电脑之后如果要写博文的话比较麻烦,所以感觉也把源程序放到Github上面比较好。但是让博客源程序和博客各占用一个项目有些浪费(e.g.博客为hxhb.github.io),所以折腾了一下让博客源程序和博客公用一个仓库的不同分支,方便管理。
博客程序:
Hexo
因为Github Pages项目的页面分支为gh-pages,则需要创建该分支。
然后在博客源程序的配置文件_config.yml
中填写deploy信息:
1 | deploy: |
修改为自己的信息之后保存。
使用以下命令推送:
1 | hexo -g |
或者
1 | hexo d -g |
即可推送至远程仓库(源程序)的gh-pages分支。
即将/sources推送到gh-pages分支(/sources是hexo生成的静态页面,也就是我们的博客)
综上,使用git和hexo集成的hexo d
命令可以分别将博客源程序和生成的博客推送至不同的分支。
写博文时可以单独将博客源程序git下来
1 | git pull origin master |
然后写好文章之后使用hexo d -g
推送上去。
不需要单独git下来gh-pages分支(因为hexo程序的sources目录就是gh-pages的内容)。
最后再把源程序推送到远程master分支就OK了。