You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何更新基于Pterodactyl的自定义项目至指定分支版本?

升级自定义Pterodactyl代码库至v1.10.4/Develop分支

前置操作

  • 先把本地所有修改提交完毕:git add . && git commit -m "pre-upgrade: 提交所有本地修改"
  • 创建独立的升级分支,避免破坏主分支代码:git checkout -b upgrade-to-v1.10.4(如果目标是develop分支,可命名为upgrade-to-develop)
  • 添加官方Pterodactyl仓库作为上游远程(未添加过的话):git remote add upstream https://github.com/pterodactyl/panel.git

拉取目标版本代码

  • 拉取上游仓库的最新代码:git fetch upstream
  • 若目标是v1.10.4稳定版,拉取对应标签:git fetch upstream tag v1.10.4
  • 若目标是develop分支,直接拉取该分支:git fetch upstream develop

执行版本合并/变基

选项1:Merge(推荐,保留自定义提交历史)

  • 合并目标版本到当前升级分支:
    • 稳定版:git merge v1.10.4
    • Develop分支:git merge upstream/develop
  • Git会自动合并无冲突的文件,遇到冲突时会暂停并提示冲突文件

选项2:Rebase(整理提交为线性历史)

  • 变基到目标版本:
    • 稳定版:git rebase v1.10.4
    • Develop分支:git rebase upstream/develop
  • 冲突出现时Git会暂停,解决后执行git rebase --continue继续;需跳过当前提交用git rebase --skip;放弃变基用git rebase --abort

手动处理冲突

  • 查看冲突文件列表:git status,标记为both modified的就是冲突文件
  • 打开冲突文件,Git会用以下标记区分内容:
    • <<<<<<< HEAD:你的自定义修改代码
    • =======:冲突内容分隔线
    • >>>>>>> [目标分支/版本]:上游的最新代码
  • 手动编辑文件,保留需要的逻辑,删除冲突标记
  • 单个文件冲突解决后,暂存该文件:git add <冲突文件名>
  • 所有冲突解决完成后:
    • Merge场景:执行git commit(Git会自动生成合并提交信息,可按需修改)
    • Rebase场景:执行git rebase --continue

验证与推送

  • 本地测试功能,确保自定义修改和上游更新兼容
  • 测试通过后,推送升级分支到私有仓库:git push origin upgrade-to-v1.10.4
  • 可在私有仓库发起PR,合并到主分支(如需代码审核)

后续维护

  • 后续更新时重复上述流程,先拉取上游最新代码再合并/变基
  • 建议定期同步上游bug修复,减少后续升级的冲突量

内容的提问来源于stack exchange,提问作者OpenSource

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 15:55:26