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 条评论
登录 后参与评论

相关文章

来自专栏我和PYTHON有个约会

04.多版本Python共存的配置和使用

但是由于工作需要,我们的个人PC上可能需要多个python版本共存,应该进行什么样的设置呢,本章内容就针对这个问题进行分析和使用的介绍

791
来自专栏用户画像

将现有项目上传至github

1、在github上新建远程仓库(空库),注意不要填写readme,不然github会初始化一个仓库,会和本地仓库产生版本冲突。

713
来自专栏好好学习吧

Windows 7 下使用gitblit + git 搭建小组内文件版本控制环境

使用前先看下GitBlit的百科介绍,很简洁:需要java运行环境;是一个纯 Java 库用来管理、查看和处理Git 资料库。即一个基于Java的分布式版本控制...

2643
来自专栏魏艾斯博客www.vpsss.net

宝塔 Linux 面板命令大全

2225
来自专栏程序员叨叨叨

【10】Hexo博客的跨设备同步

前几天使用hexo搭建了Github博客,今天在公司的电脑上想要同步Github博客到本地,遇到了点坑,查询了 一下网上的资料,现在记录一下,也算给遇到同样问题...

762
来自专栏软件工程师成长笔记

Xshell远程连接linux虚拟机

Ubuntu默认不安装openssh服务器,所以若要使用ssh远程登录Ubuntu主机,首先需要安装ssh服务器。 首先,判断Ubuntu是否安装了ssh服务...

1682
来自专栏偏前端工程师的驿站

Vim杂记:markdown插件

一、安装插件                                 从以下地址下载压缩包   github下载:https://github.com...

18610
来自专栏杂烩

gitlab bitnami 安装 原

官方页面https://bitnami.com/stack/gitlab/installer

673
来自专栏LIN_ZONE

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

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

963
来自专栏深度学习之tensorflow实战篇

解决SSH连接linux中文显示乱码问题

添加windows下mysql服务 以管理员身份打开cmd,执行 mysqld –install net stop mysql 忘记密码找回 找到m...

4015

扫码关注云+社区