Skip to content
This repository has been archived by the owner on Sep 22, 2024. It is now read-only.

一个模板项目,利用Pages服务来部署Minecraft文件更新助手的静态服务端

License

Notifications You must be signed in to change notification settings

BalloonUpdate/StaticServerForPages

Repository files navigation

StaticServerForPages

项目简介:利用Pages服务来部署更新助手的静态服务端

使用前提,确保你满足以下几点要求,否则不推荐使用本项目:

  1. 了解Git的基本操作(提交、推送、简单分支管理,合并提交)
  2. 阅读过静态服务端搭建教程(因为本项目是基于更新助手的静态服务端搭建的)
  3. 电脑上安装有Python3和Git
  4. 基础的英文阅读能力
  5. 使用正式版客户端3.1.3或以上版本;或者使用Jar版客户端1.0.0或以上版本

文件说明

文件 描述
gitee-pages-action 一个开源项目,用来自动更新GiteePages
update 更新助手的静态服务端文件
.nojekyll 不能删除,否则可能无法访问带有下划线_的文件
index.html 不能删除,否则Pages站点可能无法正常访问(这是GiteePages的要求)
README.md 本文件(对,就是你正在看的这个文件)
Tool-v3.1.3.exe 静态服务端的小工具,用来生成校验文件
仅更新Pages.bat 双击运行,用来更新GiteePages(GithubPages不需要更新)
仅更新校验文件.cmd 双击运行,用来更新校验文件
仅提交Git.cmd 双击运行,用来提交Git修改(也可以自己手动提交Git)

使用限制

  1. GiteePages的更新有1分钟冷却时间,不要频繁部署/更新。GithubPages无此限制
  2. Gitee仓库单文件大小限制为50Mb(免费版),如果仓库里有超过50Mb的文件可能会提交失败
  3. Gitee单个仓库容量限制为500Mb(免费版),总提交超过此大小可能推送失败
  4. 受仓库容量限制,请不定期使用rebase命令整理/合并提交,否则可能会超出仓库容量限制推送失败
  5. 本项目不支持GitLFS

使用教程

  1. Fork本项目并Clone到本地
  2. 将要参与更新文件,比如模组文件等,复制到update/res/.minecraft/mods/里面(res/.minecraft/mods/目录请自行创建)
  3. 将其它要参与更新的文件同样按上面的方法,复制到对应的目录上(比如Vexview的贴图复制到update/res/.minecraft/vexview/textures/下)
  4. 编辑服务端配置文件update/index.yml,具体方法参考静态服务端安装教程
  5. 双击运行仅更新校验文件.cmd来生成/更新res.yml校验文件
  6. 然后提交Git,双击运行仅提交Git.cmd来一键提交并推送Git。当然也不一定非得用这个脚本,也可以手动使用命令行,或者用图形化Git客户端来提交并推送到远端,以代替执行这个脚本
  7. 然后请根据你使用的Git服务提供商,继续阅读下面对应的教程章节

Gitee

  1. 在使用GiteePages要曾经有过成功部署GiteePages的记录。在仓库的服务页面,找到Gitee Pages,设置好后点击启动/更新按钮,就算完成了第一次GiteePages的部署。此步骤只需要手动操作一次,后面会使用开源的gitee-pages-action项目来代替我们完成这个操作
  2. 接着配置GiteePages的自动化刷新功能,打开gitee-pages-action目录
  3. 重命名_config.exam.yml_config.yml并打开编辑_config.yml
  4. 按下面的表格填写_config.yml并保存关闭,请确保下面的信息填写准确,不能有任何错误,也不能留空,如果要填写空字符串,请使用''代替。如果填写信息有误,可能会导致Pages出现404无法访问的情况
配置项 描述 实例
username Gitee 用户名 asforest
password Gitee 密码(明文) 123456
repo Gitee 完整仓库名(包严格区分大小写) asforest/ssfp
branch 要部署的分支(分支必须存在) main
directory 要部署的分支上的目录 一般留空或者src
https 是否强制使用 HTTPS true/false
  1. 注意:虽然_config.yml文件默认已经被添加到了.gitignore里,但千万不要手贱把_config.yml文件给提交推送了,这个文件包含你的用户名和明文密码,泄露可能会造成非常严重的后果(建议专门开个Gitee小号来做文件更新的推送)
  2. 运行仅更新Pages.bat(第一次运行可能需要安装virtualenv和一些依赖(默认使用清华源)),就会自动提交当前仓库的修改了,然后会自动更新Pages,有关Pages的一些限制,请往下阅读
  3. https://<asforest>.gitee.io/<ssfp>/update/index.yml粘贴到客户端配置文件里,记得把<asforest>换成你自己的用户名,把<ssfp>换成你实际的仓库名
  4. 启动客户端测试

Github

Github不像Gitee在每次推送后要主动点击Pages更新按钮,Github会在每次推送时自动更新。所以每次推送后不需要做额外的操作,就能马上看到效果

开启GithubPages的步骤也非常简单:打开仓库页面,点击Settings,点击左侧的Pages,将Source下面的None切换为main或者master,然后将后面的文件夹选项改为/(root),点击Save按钮,即可开启Pages服务

GiteePages的问题

本章节内容大部分参考自gitee-pages-action原项目中的README文件

如果GiteePages一切配置正常,且正常更新了Pages,我们会在 Gitee 公众号收到一条登录通知。这是 Gitee Pages Action 程序帮我们登录到 Gitee 官网,并为我们点击了项目的部署按钮

如果输出的最后几行是这样,那么就代表Pages更新成功了

Rebuild Gitee Pages successfully
Success, thanks for using @yanglbme/gitee-pages-action!

如果发生错误,请按下面的错误及解决方案来排查问题:

# 错误 解决方案
1 Error: Wrong username or password, login failed . 帐号或密码错误,请检查参数 gitee-usernamegitee-password是否准确配置。
2 Error: Need captcha validation, please visit https://gitee.com/login, login to validate your account. 需要图片验证码校验。可以手动登录 Gitee 官方,校验验证码。
3 Error: Need phone captcha validation, please follow wechat official account "Gitee" to bind account to turn off authentication. 需要短信验证码校验。可以关注 Gitee 微信公众号,并绑定 Gitee 帐号,接收登录提示。#6
4 Error: Do not deploy frequently, try again one minute later. 短期内频繁部署 Gitee Pages 导致,可以稍后再触发自动部署。
5 Error: Deploy error occurred, please check your input gitee-repo. gitee-repo 参数格式如:doocs/leetcode,并且严格区分大小写,请准确填写。#10
6 Error: Unknown error occurred in login method, resp: ... 登录出现未知错误,请在 issues 区反馈。
7 Error: Rebuild page error, status code: xxx 更新 Pages 时状态码异常,请尝试再次触发 Action 执行。也可能为 gitee pages 未初始化,第一次需要手动部署 gitee pages。
8 Error: HTTPSConnectionPool(host='gitee.com', port=443): Read timed out. (read timeout=6) Error: HTTPSConnectionPool(host='gitee.com', port=443): Max retries exceeded with url: /login (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7f6c889d42e8>, 'Connection to gitee.com timed out. (connect timeout=6)')) 网络请求出错,请尝试 Re-run jobs 。#27
9 [email protected]: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.. SSH 公私钥配置有问题,或是使用了带密码的私钥,请参照上文提及的密钥配置步骤进行相应配置。#29
10 Hexo Gitee Pages 自动部署站点问题。 @No5972 详细给出了一种解决方案。#34

About

一个模板项目,利用Pages服务来部署Minecraft文件更新助手的静态服务端

Resources

License

Stars

Watchers

Forks