MineGIT

MineGIT

使用Git力量的Minecraft云存档系统!

在加载世界时从 GitHub 拉取

《我的世界》云端同步!

在多个设备间同步并备份你的世界!完全集成于 Minecraft 客户端,让你在云端加载、保存及下载世界时获得无缝体验。

工作原理?

你选择的世界会以代码仓库的形式上传至你选定的 Git 托管平台。每次退出到标题界面时,系统会创建当前世界状态的提交并推送到远程仓库。当世界被加载时,模组会检查云端是否有可用新版本,若有则会自动下载到你的设备。

由于本模组底层使用 Git,这意味着每次只会上传和下载你修改过的世界存档文件夹中的文件,从而节省存储空间和网络带宽。

如何设置?

设置该模组需要几个步骤,包括为你选择的 Git 服务创建个人访问令牌,以及选择要启用 MineGIT 的世界。

视频指南:

首次设置

有多种方案可用于托管远程世界存储,包括 GitHub、GitLab、Codeberg,甚至自建 Gitea 或 Forgejo 实例!对于新手,我推荐使用 GitHub 作为首选服务。假设你使用 GitHub,需要按以下步骤生成个人访问令牌:

  1. 如果还没有 GitHub 账号,请先创建一个 (https://github.com)
  2. 进入 创建个人访问令牌的页面
  3. 点击 Generate new token
  4. 在 Token name 下输入任意名称(例如 MineGIT)
  5. 滚动到 Expiration 并设置为 No expiration(避免令牌过期后重复此流程)
  6. 在 Repository access 下选择 All repositories
  7. 在 Permissions 下,点击 Add permissions 并选择 Administration 和 Contents
  8. 将 Administration 和 Contents 行的 Access 设置为 Read and write
  9. 点击 Generate token 并复制生成的令牌,以便稍后粘贴到 Minecraft 中(生成的令牌应以 github_pat_ 开头,后跟一长串字母和数字)

游戏内设置

安装模组并进入游戏后,按以下步骤将你的 GitHub 账号与模组关联:

  1. 在世界创建或世界选择界面左下角点击云朵按钮(如果按钮未出现,说明你之前已关联过账号;请参阅下方“重新配置账号关联”部分)
  2. 在出现的新页面上输入你的 GitHub 用户名和上一步创建的个人访问令牌(PAT)
  3. 点击 Test credentials 按钮以确保信息输入正确
  4. 现在你可以退出该界面,继续为某个世界启用同步或克隆现有世界

重新配置账号关联

如果你之前已设置过账号关联,想之后更改设置,有几种方法可以返回配置界面:

  • 通过 ModMenu 配置: 如果安装了 ModMenu,只需在模组列表中找到本模组并从此处打开配置
  • 从世界克隆界面: 世界克隆界面右上角有一个按钮,点击即可打开配置界面
  • 从世界选择界面: 按住 Alt 键并点击世界选择界面左下角的世界同步按钮,即可返回配置界面

为世界启用同步

需要为你希望同步到 Git 托管平台的每个世界单独启用世界同步。为世界启用同步的步骤如下:

  1. 在世界选择界面上选择一个世界
  2. 点击界面左下角标有 Enable world sync 的云朵按钮
  3. 在下一个界面上确认你的决定

此过程会在你的账号上创建一个名为 minegit_[世界文件夹名称] 的新仓库,在你的世界存档文件夹中初始化一个 Git 仓库,并将其当前状态推送到云端。从此刻起,加载世界时会从你的 Git 托管平台拉取最新更改,退出世界时会推送更改。

现在你可以通过下一步——克隆,在另一台设备上下载此世界,从而实现设备间的同步。

在不同设备上下载世界(克隆)

克隆世界会下载该世界最后一次保存到云端的精确状态。按以下步骤克隆世界(假设你使用 GitHub):

  1. 在网页浏览器中导航到 github.com
  2. 点击右上角的个人头像,然后选择 Repositories
  3. 找到对应你想克隆的世界的仓库并复制其名称
  4. 返回 Minecraft,点击世界选择界面或世界创建界面左下角标有向下箭头的按钮
  5. 粘贴你之前复制的仓库名称并按 Clone
  6. 现在你可以像平常一样加载世界,并且更改将在你的设备间同步!

技巧与提示

  • 如果你想退出世界但不将其推送到云端(例如,想重新启动 Minecraft 并加载同一个世界而无需等待更改推送),可以在点击 Save and Quit to Title 时按住 Alt 键。这将跳过推送步骤。
  • 你可以在编辑菜单中选择世界并回滚到之前的版本!这是因为 Git 在你每次保存并退出时都会记录所有世界更改的列表。
  • 如果你想节省计算机上 Git 仓库占用的存储空间,或让世界在其他设备上克隆更快,可以使用编辑世界菜单中的 Prune World 按钮。这将删除世界所有旧版本,仅保留最新版本。

报告问题

如果你遇到 bug、崩溃,或只是对如何改进模组有建议,欢迎在模组的 问题追踪器 上提交问题!

提交问题时,请附上当前 Minecraft 版本、Fabric 版本、模组版本以及任何相关的游戏日志。