红联Linux门户
Linux帮助

node.js+hexo博客同步与备份

发布时间:2016-04-11 10:32:56来源:linux网站作者:happyxiaofan

错误汇总

最近考虑把Node.js+hexo搭建的博客备份到云端,然后在另一台电脑同步更新。要实现多机同步与备份,首先需要从云端使用git clone得到网站原始文件,然后在新机器上安装node.js+hexo之后才可以正常使用。我在之前的电脑中把网站的原始文件备份到了oschina云端,然后想在另一台电脑的Ubuntu15.10系统上完成博客的同步更新,由于新电脑没有安装node.js+hexo环境,所以需要首先安装这两个软件。

下面是遇到的问题:

Error: socket hang up

npm config set registry http://registry.npmjs.org/

Error: CERT_UNTRUSTED

npm config set ca “”

No compatible version found

npm install -g npm


Ubuntu安装Node.js的正确姿势

下载和安装nvm

$ wget -qO- https://raw.github.com/creationix/nvm/master/install.sh | sh

nvm安装好了之后,通过nvm安装node.js

$ nvm install 4

让nvm生效

$ source ~/.bashrc

安装hexo

$ npm install -g hexo-cli

查看node.js、npm和hexo的版本

$ node -v
$ npm -v
$ hexo version


发布博客的正确姿势

首先,你得从原来的电脑将网站的原始文件(不包括public文件夹、node_modules)上传到oschina的私有仓库(为什么使用oschina,因为github创建私有项目是需要$的,而oschina创建私有项目则完全免费)。然后需要将一些主题文件隐藏的.git文件删除,因为不删除的话无法提交更新。最后在其他电脑使用clone一下就可以开始写博客并发布了。下面是具体的操作步骤。

在本地的其他路径下创建一个备份文件夹,并初始化git仓库

git init
git remote add origin https://git.oschina.net/ACCOUNT/REPONAME.git
使用的时候需要将ACCOUNT修改成你的oschina的账号,REPONAME修改成你的仓库名称。origin是本地分支,remote add会将本地仓库与云端仓库关联起来

将网站原始文件上传到oschina的私有仓库

##### 添加blog目录下所有文件,注意有个.(.gitignore声明过的文件不包含在内)
git add .
##### 添加更新说明
git commit -m “first commit”
##### 推送更新到云端服务器,-u表示本机第一次提交,之后就不用输-u了
git push -u origin master

经过上面的步骤云端备份就已经完成了,之后就是在其他电脑进行clone,然后把网站原始文件同步到本地咯。下面是具体的步骤:

同步网站原始文件到本地

##### 初始化仓库
git init
###### 将本地文件和云端仓库映射起来
git remote add origin
##### 获取云端(oschina)所有的网站文件
git fetch –all
##### 将本地仓库强制指向从云端拉取的内容,不做合并处理往往在其他
##### 电脑操作的时候会首先创建一个空文件夹,所以这步不是必须的
git reset –hard origin/master

上面的步骤完全针对新手,对git比较熟悉的话可以直接使用下面的命令:

git clone https://git.oschina.net/ACCOUNT/REPONAME.git

在修改本地文件后,需要更新本地文件

git add .
git commit -m “commit message”
git push origin master

博客发布与部署

hexo g
hexo d
或者
hexo d -g


这样就完成了从另一台电脑发布博客并同步的目的,至此,多机同步与备份就完成了!


本文永久更新地址:http://www.linuxdiyf.com/linux/19680.html