hexo 博客利用 github 分支同步源文件

hexo 是一个优秀的静态博客工具,唯一的不足就是源文件无法同步,让人几乎只能在一台电脑上写博客,为了解决这个问题,我们可以使用 Github 来管理我们的 hexo 源文件,具体思路就是:在我们博客的远程仓库中新建一个分支,用这个分支来存储博客的源文件,这样我们每次在更新博客并部署之后可以顺手多执行两条命令将源文件同步到远程分支中去,不需要做任何环境切换的操作,还可以将部署和同步操作写成一个命令脚本,自动执行以上命令。建立同步的过程很简单:

初始化版本库&建立仓库关联(已与远程仓库关联的可忽略这一步)

一般根据 hexo 教程一步步建立起来的博客都没有跟自己的远程仓库建立关联,查看是否关联的方法是输入 git remote 看是否有关联的远程仓库:

可以看到我这里有一个名叫 origin 的仓库与我本地的文件夹关联,如果当前还没有关联,先用 git init 命令将你的本地文件夹初始化成一个版本库,然后使用 git remote add origin 你的github仓库地址 命令来建立与远程仓库的关联,这里的 origin 是你定义的远程仓库在本地的名字,你也可以叫别的,一般命名成 origin,这样就建立好了关联了,使用刚刚的 git remote 命令检测会看到你关联的仓库。

提交文件

像正常提交文件那样使用 git addgit commitgit push 命令提交文件,但这里在 push 的时候要注意新建一个分支去存你要提交的源文件,具体命令是 git push -u origin HEAD:分支名,这里的分支名自己取,HEAD 是版本库的头指针的意思,代表本地版本库里面的最新版本,origin 是刚刚你自己添加远程关联时候的名字,如果你的不是叫 origin 就写成自己定义的名字, -u 参数是为了建立本地分支与远程分支的关联,以后 push 的时候直接输入 git push 就可以了,所以这整个命令的意思就是:把本地最新版本的代码提交到远程仓库的某个分支上去,如果远程仓库还没有这个分支,就在远程仓库里新建一个分支,然后将它跟本地当前分支关联起来。提交之后你就会发现自己的 github 仓库多了一条分支,就是你刚刚提交的那个分支。 ??至于这里为什么不先在 github 上面手动建立分支,然后再在本地建立关联,是因为如果是远程手动建立分支会自动以 master 分支为模板建立一份一模一样的文件,而我们仓库里面 master 分支存的都是经过 hexo 编译的文件,跟源文件完全不一样,新建这样一个分支之后还要手动把里面的文件删掉,另一个原因是如果在远程手动建分支,你在本地还得手动用 git fetch origin 拉取远程分支的更新,然后再手动建立与分支的关联,比较麻烦,当然如果你是刚开始部署 hexo,github 仓库里面还一点东西都没有的话这些问题都不存在,那就随意。

设置默认分支

最后我们需要把你新建的那个分支设置成 github 的默认分支,这样做的原因是为了你以后在别的机器上拉取代码的时候能够直接拉取源文件,不用再指定分支。

在这里选择好默认分支之后,update就行了。现在你就可以使用 github 来同步自己的 hexo 博客源文件啦~

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java成神之路

Spring_总结_03_装配Bean(二)之Java配置

上一节提到,装配Bean有三种方式,首先推荐自动装配。当自动装配行不通时,就需要采用显示配置的方式了。

703
来自专栏React Native开发圈

React Native 报错 Application XXXX has not been registered”

今天新下载了一个React Native项目,在init之后,直接执行run-ios,然后就报错*Application XXXX has not been r...

711
来自专栏smy

git将代码提交到远程分支(非主分支)

一个仓库可以包含多个分支,有一个默认的主分支:master 若想提交代码至远程仓库的某个分支(非主分支) 先查看下本地分支以及远程分支:git branch -...

2765
来自专栏杨龙飞前端

sass或scss入门

1933
来自专栏波比

Linux服务器通过crontab自动备份数据库

执行 crontab 命令如果报 command not found,就表明没有安装

1356
来自专栏繁花云

[分享]编译好的python3.6.4

700
来自专栏鬼谷君

Linux非root用户如何使用80端口启动程序

1365
来自专栏Java成神之路

Maven异常_04_Failed to clean project

异常:Failed to execute goal org.apache.maven.plugins:maven-clean-plugin:2.5:clean ...

642
来自专栏Youngxj

QQ个人业务社区网站源码带后台

1516
来自专栏LIN_ZONE

百度富文本编辑器的上传图片的路径问题

之前在写个人博客网站的时候,用到了百度的富文本编辑器,在往文章内容插入图片的时候,上传一直出错,总结了一下,与大家分享

833

扫码关注云+社区