参考资料:

使用hexo,如果换了电脑怎么更新博客?
https://www.zhihu.com/question/21193762
其中,最多赞回答(转至其博文):
http://crazymilk.github.io/2015/12/28/GitHub-Pages-Hexo搭建博客/#more

Q:如何本地直接删除文件后,git到远程仓库,远程仓库也删除了对应文件?
A1:“git到远程仓库”是指什么?一般你在本地删除了文件,之后commit,再push到远程,对应的文件肯定就删掉了。
A2:例如删除github上的 .DS_Dtore 文件的执行操作,进入到对应目录,在终端中执行以下操作
git rm --cached filename
git commit -m “hehe”
git push origin
执行完毕,刷新一遍github,你会发现此时想要删除的文件已经消失了。


1、在需要创建 .gitignore 文件的文件夹, 右键选择Git Bash 进入命令行,进入项目所在目录。
2、输入 touch .gitignore ,生成“.gitignore”文件。
3、在”.gitignore” 文件里输入你要忽略的文件夹及其文件就可以了。(注意格式)
我的 .gitignore:

.deploy_git/
node_modules/
public/

某知乎回答,其.gitignore文件:

db.json
debug.log
node_modules/
public/
.deploy_git/

参考用:
我在新建一个文件夹 hexo init 后出现了一个.gitignoren文件,文件内容为:

.DS_Store
Thumbs.db
db.json
.log
node_modules/
public/
.deploy
/


我的备份方式

在github上新建一个GitHub Page:strivebo.github.io,正如知乎上的回答,在这个仓库下,另外新增加一个hexo分支,并且设置该分支为主分支。

这样,master用来上传hexo搭建的博客编译好的博客,hexo分支用来备份源文件,包括theme、.md等文件。

完整操作如下:(摘自知乎回答)

  1. 创建仓库,strivebo.github.io;
  2. 创建两个分支:master 与 hexo;
  3. 设置hexo为默认分支(因为我们只需要手动管理这个分支上的Hexo网站文件);
  4. 使用git clone git@github.com:strivebo/strivebo.github.io.git拷贝仓库;
  5. 在本地strivebo.github.io文件夹下通过Git bash依次执行npm install hexo、hexo init、npm install 和 npm install hexo-deployer-git(此时当前分支应显示为hexo);
  6. 修改_config.yml中的deploy参数,分支应为master;
  7. 依次执行git add .、git commit -m “…”、git push origin hexo提交网站相关的文件;
  8. 执行hexo generate -d生成网站并部署到GitHub上。

个人已出此坑:第 5 步中特别要注意,hexo init会清空.git 文件夹(即版本控制信息会丢失)
所以我的做法是:
第 4 步完成后,先拷贝出.git文件夹,等第 5 步完成后,再粘贴.git文件进去。

此外,如何出现提示 no ** develop 什么的,不太记得,需要使用 npm install hexo-deployer-git --save

  • 日常修改
    在本地对博客进行修改(添加新博文、修改样式等等)后,通过下面的流程进行管理:
    依次执行git add .、git commit -m “…”、git push origin hexo指令将改动推送到GitHub(此时当前分支应为hexo);
    然后才执行hexo generate -d发布网站到master分支上。
    虽然两个过程顺序调转一般不会有问题,不过逻辑上这样的顺序是绝对没问题的(例如突然死机要重装了,悲催….的情况,调转顺序就有问题了)。

  • 本地资料丢失
    当重装电脑之后,或者想在其他电脑上修改博客,可以使用下列步骤:
    使用git clone git@github.com:strivebo/strivebo.github.io.git拷贝仓库(默认分支为hexo);
    在本地新拷贝的strivebo.github.io文件夹下通过Git bash依次执行下列指令:npm install hexo、npm install、npm install hexo-deployer-git(记得,不需要hexo init这条指令)。

另外:
我还会新建一个仓库,如 hexo-blog ,专门用来备份本地 .md 等源文件,这些博客文件丢失最难受了。因为上面用的分支方式,最后是多次尝试我是成功了,但是在成功之前我失败了好多次,然后导致删了仓库重新再来,所以我对分支方式还是不太保险,对每一步操作和涉及的文件的含义还未完全明白。所以干脆另建一个仓库再次备份吧,步骤如下:

  1. github上新建 hexo-blog 仓库
  2. 电脑上打开 Git Bash,输入 git clone 仓库地址 ,克隆下仓库至本地计算机
  3. 然后需要的备份的文件全都拷贝到刚刚克隆下来的 hexo-blog 仓库内,然后进行 git add . 、git commit -m “” 、git push origin master 上传至远程仓库hexo-blog上。
    注:当然也可以拷贝所有文件包括 public、.deploy_git 文件夹至刚刚克隆下来的仓库hexo-blog中,但是记得新增一个 .gitignore文件,内容参照文章最上面的有关回答。其作用大概是上传github远程仓库时,忽略其中指定的文件及文件夹。

使用Hexo搭建博客,备份至GitHub过程(基于网上资料的实践操作)相关推荐

  1. hexo博客本地服务器显示正常,Hexo 搭建博客 本地运行 常见报错及解决办法

    作为一名在hexo方面的新手,我在使用hexo编辑文档时遇到了很多问题,hexo generate编译的时候遇到了各种错误. 在此将这些错误及其解决方案记录下来,以便日后查证之用,同时,也可给各位在遇 ...

  2. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(二)-Hexo参数设置

    前言 前文手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置介绍了github注册.git相关设置以及hexo基本操作. 本文主要介绍一下hexo的常用参数设置. ...

  3. 使用Hexo搭建博客并部署到Github

    一.博客环境搭建 ​ Hexo 是一个静态博客框架,基于 Node.js,将 Markdown 文章通过渲染引擎,生成一个静态网页,再结合 Git 命令(ssh),Hexo 是一个快速.简洁且高效的博 ...

  4. 用Github Pages+Hexo搭建博客之(八)Hexo博客Next主题添加统计文章阅读量(访问量/浏览量/阅读次数)功能

    [置顶][专栏]用Github Pages+Hexo搭建博客 文章目录 [置顶][专栏][用Github Pages+Hexo搭建博客](https://blog.csdn.net/qq_342439 ...

  5. hexo搭建博客教程(matery主题)

    hexo搭建博客教程(matery主题) 写在前面 这篇教程是我搭建个人博客的路程经历和经验总结,matery主题挺多人用,网上也有各种详细教程,没时间我就不出详细教程了,这里给出其他大佬的教程链接, ...

  6. hexo搭建博客的几种方式(入门级)

    hexo搭建博客的几种方式(入门级) 概述 网站介绍 html css js hexo node.js git hexo安装 安装node.js 安装Git 安装hexo 初始化hexo 网站部署 免 ...

  7. 建站规划—基于私有化gitlab/node+hexo搭建博客网站

    目录 概述 建站方案及成本 建站方案 成本 低成本替代方案 概述 本合辑(建站合辑)将介绍如何基于私有化gitlab+pages+Hexo搭建博客网站,由于域名备案周期较长,因此更新可能较慢.根据功能 ...

  8. Hexo搭建博客教程-基于Butterfly主题

    title: Hexo搭建博客教程 tags: Hexo 博客教程 categories: Hexo keywords: 'Hexo,博客教程' description: Hexo搭建博客,以及主题b ...

  9. 详解Hexo搭建博客的底层原理

    文章目录 前言 Github page Hexo 工作原理 每次部署的流程 模板引擎--Hexo怎样生成HTML 数据填充 配置文件中的数据 配置文件中数据的使用 总结 前言 在2021年初对照着攻略 ...

最新文章

  1. 《javascript模式》 容易踩中的那些坑
  2. java简单通讯录的实现02person类_Java自定义类加载器实现不同版本的类加载
  3. Android 自动向上滚动,android – Recyclerview在插入数据时自动向上滚动
  4. fedora docker_如何在Fedora中授予用户使用Docker的权限
  5. 加号和减号在一起怎么读_在家摄影怎么玩?拍摄小黄米场景搭建,摄影软件和修图软件介绍...
  6. ajax上传图片的本质
  7. (进阶)LeetCode(119)——杨辉三角 II(JavaScript)
  8. Hyper-V故障转移群集搭建(1)
  9. 2019工作榜单 | Python程序员吸金榜,AI排第一,这个我服!
  10. Visual Basic 2012 借助DataGridView控件将Excel 2010数据导入到SQL server 2012
  11. 学习笔记1/5,操作系统之操作系统概念
  12. 物联网、大数据、云计算、人工智能之间的关系
  13. C语言使用 gzip 算法压缩数据
  14. python 人民币数字转汉字大写金额
  15. day04-硅谷课堂-前端基础知识(二)
  16. html5 端午节 龙舟,端午节看龙舟作文(精选5篇)
  17. fatal: Could not set SSL backend to ‘schannel‘:already set
  18. ubuntu 安装zoom
  19. 学校的校园景点平面图(校园景点迷你地图C++数据结构)(查询图中顶点间的最短路径查询图中任意两个顶点间的所有路径)
  20. 实施工程师的必要条件

热门文章

  1. 如何通过js处理相同时间的信息整合到一起的问题
  2. [转]OllyDBG 入门系列(二)-字串参考
  3. 成都Uber优步司机奖励政策(3月9日)
  4. 牛客网 --java问答题
  5. x264 n-th pass编码时候Stats文件的含义
  6. [转载]最完整PHP.INI中文版
  7. XENSERVER 图形界面安装Linux
  8. ⑨④-如果不发展就可能面临生存窘境
  9. Memcached 源码分析——从 main 函数说起
  10. 时尚的基因是创新 -- 旺旺平台产品线员工大会即兴发言提要