错误汇总
最近考虑把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
这样就完成了从另一台电脑发布博客并同步的目的,至此,多机同步与备份就完成了!