hexo多终端同步和管理

写在前面

hexo生成博客提交的是渲染之后的html文件,并不是源码,本文主要描述如何实现hexo多终端源码同步,使用到的工具是“git”,文章可能还有很多不足,请大家谅解,欢迎大佬提意见。

本文使用的东西

  1. win10电脑
  2. hexo4.1.1
  3. git2.24.0

1.方法介绍

多终端管理的原理:把博客源码提交到GitHub存储库,使用git进行不同终端的本地库同步。

有两种不同的方法:

  1. 创建仓库:需要在GitHub上创建一个用于存储源码的库,建议最好选择“private”不要公开,除非你博客的所有内容打算完全公开。
  2. 创建分支:不新建仓库,将源码放在博客界面所在的仓库的另一个分支中。

我采用创建仓库的方法,创建了一个“blog_source”存储库。
玖涯博客

2.创建仓库方法

  1. 打开博客目录,目录下有一个“.gitignore”文件,没有就自己创建一个,该文件用于忽略指定的文件不进行同步,根据你的要求进行配置。我的配置内容如下:
.DS_Store
Thumbs.db
db.json
*.log
node_modules/
public/
.deploy*/
  1. 右键打开“git”,依次输入以下命令进行本地仓库与远程仓库对接
# 初始化本地仓库
git init

# 本地仓库和GitHub远程仓库对接
# nineya/blog_source.git修改为准备用于存放源码的仓库名
git remote add origin git@github.com:nineya/blog_source.git

# 查看远程仓库地址,验证配置是否正确
git remote -v

玖涯博客

3.提交数据到远程仓库

# 同步远程库上的数据,否则无法提交
git pull origin master --allow-unrelated-histories

# 将所有文件添加到本地仓库
git add -A

# 提交到远程仓库
git commit -m "博客源文件"
git push

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2nAlfpMK-1576260207464)(https://cdn.jsdelivr.net/gh/nineya/blog_file/images/p/8dfc8a85/20191214015908.png)]

3.创建分支方法

  1. 这一步是一样的,打开博客目录,目录下有一个“.gitignore”文件,没有就自己创建一个,该文件用于忽略指定的文件不进行同步,根据你的要求进行配置。我的配置内容如下:
.DS_Store
Thumbs.db
db.json
*.log
node_modules/
public/
.deploy*/
  1. 右键打开“git”,依次输入以下命令进行本地仓库与远程仓库对接
# 初始化本地仓库
git init

# 本地仓库和GitHub远程仓库对接
# nineya/blog_source.git修改为博客界面所在仓库名
git remote add origin git@github.com:nineya/nineya.github.io.git

# 查看远程仓库地址,验证配置是否正确
git remote -v

# 新建分支blog_source
git branch blog_source

# 切换到blog_source分支
git checkout blog_source

3.提交数据到远程仓库

# 同步远程库上的数据,否则无法提交
git pull

# 将所有文件添加到本地仓库
git add -A

# 提交到远程仓库
git commit -m "博客源文件"
git push

4.新电脑同步

在新电脑上安装好git、nodejs和hexo,只要输入以下命令同步即可

# 克隆博客源码
git clone git@github.com:nineya/blog_source.git blog

# 打开博客根目录
cd blog

# 安装依赖
npm install

5.出错

5.1fatal: refusing to merge unrelated histories错误

出现该错误的原因是项目中文件的创建时间早于仓库创建的时间,在你的命令之后添加--allow-unrelated-histories这段内容即可。

示例:

git pull origin master
# 改为
git pull origin master --allow-unrelated-histories

git push origin master
# 改为
git push origin master --allow-unrelated-histories

5.2There is no tracking information for the current branch错误

玖涯博客

输入提示上的内容即可解决,示例如下:

git pull origin master

或

git branch --set-upstream-to=origin/master master
git pull

总结

静态博客发表文章等都比较繁琐,本人在实际使用中,该方法更多作为保存博客源码的一种方式,异地写博客直接保存“.md”文件,回到电脑面前再提交博文。有不清楚的地方欢迎评论留言,看到的我都会回复的。本文到此结束,有什么不足的地方请大家不吝指正。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要实现Hexo多用户登录,可以使用OpenID进行身份验证。OpenID是一种开放式身份验证协议,使用户可以使用一个帐户登录多个网站,而无需为每个网站创建不同的帐户。 以下是实现Hexo多用户登录的步骤: 1. 在Hexo博客中安装OpenID插件。可以使用hexo-openid或hexo-authentication等插件。 2. 注册OpenID提供商,例如Google、Facebook或GitHub。在OpenID提供商网站上创建一个应用程序,并获取客户端ID和客户端密钥。 3. 在Hexo博客中配置OpenID插件。将客户端ID和客户端密钥添加到Hexo配置文件中,并指定OpenID提供商的授权网址和令牌网址。 4. 在Hexo博客中创建多个用户帐户。可以使用Hexo管理员帐户创建多个用户帐户,或者使用第三方用户管理插件。 5. 在Hexo博客中启用OpenID登录。将OpenID登录选项添加到Hexo主题的登录页面,并将登录请求发送到OpenID提供商。 6. 在OpenID提供商中授权登录。用户将被重定向到OpenID提供商的授权页面,以授权Hexo博客访问其个人信息。 7. 在Hexo博客中验证用户身份。一旦用户授权登录,OpenID提供商将向Hexo博客发送令牌。Hexo插件将验证令牌,并将用户身份存储在本地数据库中。 8. 在Hexo博客中显示用户信息。一旦用户登录成功,Hexo主题将显示用户信息,并提供特定于用户的功能和权限。 通过使用OpenID实现Hexo多用户登录,可以提高博客的安全性和用户友好性,同时使用户可以方便地在多个网站之间共享身份验证信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玖涯菜菜子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值