本文章转载并修改自:Hexo在多台电脑上提交和更新[作者Kakaluotuo]
做这篇文章的主要原因是我的hexo源文件在a电脑上。可是我并没有办法随身携带a电脑。有时要在b电脑上写文章。每次写完一篇文章都要保存然后拷贝到a电脑上才可以做到部署上传自网站。这令我很头痛。于是我在网上搜索有没有好的办法。结果在CSDN上看到开头转载的文章。于是根据Kakaluotuo的hexo多电脑提交和更新的文章写出这篇文章。文章内容多自修改Kakaluotuo的文章,如果想看更详细的说明请移步该作者的原贴:传送门
tips:由于该上文章是在GitHub上做文件上传。而我因为工作需要,电脑绑定的是Gitee的配置。无法推送到GitHub上。所以我使用的是Gitee创建仓库并且实现多电脑上hexo的提交和更新。
1.清楚那些文件是需要同步的
这是a电脑上的目录结构
文件夹 | 说明 | 是否需要上传github/gitee |
---|---|---|
node_modules | hexo需要的模块,就是一些基础的npm安装模块,比如一些美化插件,在执行npm install 的时候会重新生成 | 不需要 |
themes | 主题文件 | 需要 |
public | hexo g命令执行后生成的静态页面文件 | 不需要 |
packages.json | 记录了hexo需要的包的信息,之后换电脑了npm根据这个信息来安装hexo环境 | 需要 |
_config.yml | 全局配置文件,这个不用多说了吧 | 需要 |
.gitignore | hexo生成的默认的.gitignore模块 | 需要 |
scaffolds | 文章的模板 | 需要 |
.deploy_git | hexo g自动生成的 | 不需要 |
tips:另外出现的.git和.idea是因为我已经将源文件部署到Gitee上和用的是webstorm来编写文章。所以会出现这两个文件夹
2.上传到Gitee
在Gitee上创建一个仓库
创建好之后在本地使用命令行将你创建的仓库clone到本地电脑上
clone到本地之后会在文件夹里面看到一个.git的文件。将这个文件移动到你的hexo源文件目录下
在hexo源文件夹内创建一个
.gitignore文件
,这个文件是提交的时候自动屏蔽哪些文件&&文件夹不提交推送的1
2
3
4
5
6
7
8.DS_Store
Thumbs.db
db.json
*.log
node_modules/
public/
.deploy*/
.idea/- 我在后面加上了
.idea/
是因为用jetbrains家的开发工具默认会生成这个文件夹。我并不需要将这个文件夹提交上传。所以我也加上去了 - 如果已经clone过主题文件,那么需要把theme主题文件夹里的 .git 也删除。因为git不能嵌套上传,最好是显示隐藏文件,检查一下有没有,否则上传的时候会出错,导致你的主题文件无法上传,这样你的配置在别的电脑上就用不了了。
- 我在后面加上了
在hexo源文件夹内创建一个
.gitignore文件
,这个文件是提交的时候自动屏蔽哪些文件&&文件夹不提交推送的1
2
3git add .
git commit
git push
此时已经成功将整个网站推送到了远程库
3.后续补充
至此,整个网站备份至远程仓库,当网站的配置或文章修改后都要将远程仓库更新。先拉取git pull
仓库内的文件保证最新的源文件。修改配置或更新文章之后先hexo s
确定没有问题之后,提交推送到远程仓库之后,在执行hexo的部署
1 | hexo clean && hexo d -g |