Gridea 同步遇到错误


基本问题描述

因为 GitHub 网络不稳定问题,在使用 Gridea 同步进行上传时会存在上传失败情况

在这里插入图片描述

解决方案

简单理解,GitHub Pages 即为每一个 GitHub 用户提供一个免费的网址,该网址使用 GitHub Pages 对应库中的资源进行生成页面。在博客制作过程中 Gridea 扮演了将用户制作的 Markdown 文档渲染成 GitHub Pages 所需资源的角色。

查阅 Gridea 项目文档 发现,Gridea 在 0.9.3 版本更新中对博客本地存储结构做了改变。

在这里插入图片描述

即 Gridea 渲染后文件将会存储在文件夹 ~/.gridea/output 中:其文件夹内容:

在这里插入图片描述
对 Gridea 功能进行尝试,发现其预览功能会对当前文件进行渲染,并将渲染后资源存储于文件夹 ~/.gridea/output 中(该操作会清空文件夹中原有 Git 库信息)。而同步功能则会在渲染基础上,根据系统预设远程链接信息重新创建 Git 库,同时将其整合成一个 commit 提交至远程 GitHub 仓库。

由于同步功能因为网络不稳定问题会存在上传失败情况(同时提交时会覆盖此前 commit 记录),故考虑不使用同步功能,只使用预览功能执行渲染(即仅将 Gridea 客户端作为静态渲染器),待渲染完成后再对文件夹 ~/.gridea/output 中文件资源使用 Git 手动提交至远程仓库。

更新:后续发现使用预览功能时,Gridea 渲染得到页面中会使用本地 url,从而导致在GitHub Pages 博客中因各跳转链接为本地 url 而无法正常跳转到各子页面,故在使用时仍需选择同步功能进行渲染,为防止意料之外的上传成功,此处需在选择同步按钮进行渲染时断开网络或直接修改远程设置中令牌为错误令牌。


手动上传过程

首先点击预览按键进行渲染,渲染后生成文件位于 ~/.gridea/output 文件夹

在这里插入图片描述
此后使用 Git 进行手动上传,使用 VS code 打开~/.gridea/output 文件夹,此后选择 终端 -> 新建终端打开终端。(此处使用 VS code 终端进行操作,其他命令行工具亦可)

在这里插入图片描述
更新:由于使用同步功能会在 output 文件夹下创建 Git 仓库,故此处应先删除现有本地库后再重新进行初始化

执行命令行语句删除本地仓库,即删除 output/.git 文件夹(此处为 win10 powershell 指令操作)

    Remove-item ./.git

创建本地 Git 库,并将资源推送到本地库当前分支(此处 xx 即为该次提交名称)

    git init            
    git add .    
    git commit -m "xx"          

链接远程 GitHub 库 (此处 ~ 指代 GitHub 库名称),此处可能需要进行登录操作

    git remote add  origin  ~.git     

重命名当前分支,此处我将更新的分支统一命名为 Gridea,其余命名亦可

    git branch -m master Gridea     

拉取远程库中最新版本,并将其设为当前分支

    git fetch origin master:master
    git checkout 'master'   

对本地分支进行合并,将 Gridea 分支(本地最新分支)合并进 master 分支(远端拉取得到分支),此处采用 theirs 合并策略,即当出现冲突时以 Gridea 分支(本地最新分支)内容为准进行修改

    git merge -s recursive -X theirs --allow-unrelated-histories  Gridea   

提交至远端库

    git push -u origin master  

输出参考

在这里插入图片描述
在这里插入图片描述

至此,手动上传已经完成。至于使用 Gridea + GitHub Pages 构建博客的细节,此处不再赘述。详情可参考 Gridea 上手教程——小白也可以用的 GitHub Pages 搭建工具



参考资料

Gridea 同步失败?谈谈我的解决办法

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值