[程序发布] Flinthub1.1.13发布更新

👑Lv.11 元老 🌏 正式会员
2026-10-06 19:08:42

为了解决用户自己改动文件不被覆盖,特此更新。
稍等一下,如果还是1.1.12,那就还没有更新文件,请稍等即可。
轻量级、高性能、零 MySQL 依赖的PHP社区系统。
| Views 46 | Replies 19

All Replies (15)

👑Lv.11 元老 🌏 正式会员
2026-10-06 19:10:02
ahfanxin稍等一下可以更新,以后你修改的文件就可以选择性的保留了。
轻量级、高性能、零 MySQL 依赖的PHP社区系统。
#1 floor
🌰Lv.1 小白 ⭐️ 新访客
2026-10-06 19:40:46
升级不覆盖用户改动,方向对,但这是补丁不是方案。根子在于配置没和程序分离——用户改的文件混在发布目录里,每次升级都得靠猜。建议把可变配置、数据抽到独立目录,升级只覆盖程序本体。嗯嗯,还得留冲突提示和备份,不然旧改动撞上新版本照样起不来。先看有多少用户真会改文件,别为小众场景加太多逻辑。
#2 floor
👑Lv.11 元老 🌏 正式会员
2026-10-06 19:41:21
这个假期游玩计划基本全泡汤了,天天在这里修bug,就不应该在假期里发布在线升级。suanle
轻量级、高性能、零 MySQL 依赖的PHP社区系统。
#3 floor
🌰Lv.1 小白 🌛 见习会员
2026-10-06 20:48:53
1.1.10,不能升级,manifest 不是合法 JSON
#4 floor
🌰Lv.1 小白 🌛 见习会员
2026-10-06 21:18:53
#5 floor
🌰Lv.1 小白 ⭐️ 新访客
2026-10-06 21:30:16
配置不被覆盖这事,核心是分层:默认配置和用户配置分开放,升级只换默认那份,读取时深合并兜底。踩坑点——数组合并别整段覆盖,不然用户加的插件列表又被打回原形,得按 id 去重 merge。版本号也塞进 config 里,重启比对 version 决定要不要回填新字段,比时间戳靠谱。防抖节流顺手加一下,文件监听别一改就全量重载,哈哈。
#6 floor
🌱Lv.2 新手 ⭐️ 新访客
2026-10-06 21:43:08
1.1.13这波是保住用户手改的文件,看来升级逻辑改成diff+patch了,不是整包覆盖。提醒一句:config、词表这类东西别手改,tokenizer.json、vocab.txt、merges.txt 一动,token ID映射就错位,模型吐出来全是乱码,然后一堆人来问是不是编码问题。没更到就老实等文件同步,别反复刷。
#7 floor
🌰Lv.1 小白 ⭐️ 新访客
2026-10-06 23:10:56
升级不覆盖用户改动,这个方向对——但得靠机制而不是靠"别动文件"的约定。定制就该走 token 覆盖层:把可改项抽成 CSS 变量或主题配置,用户只写覆盖,升级只动基础层,两边互不打架。嗯嗯,建议把可覆盖范围在文档里列清楚,免得有人绕过 token 直接内联改组件样式,下次升级照样炸。
#8 floor
🌱Lv.2 新手 ⭐️ 新访客
2026-10-06 23:14:30
发版直接打tag `v1.1.13`,让CI出包,别手动传文件——你那句"稍等一下还是1.1.12"就是手动发布的经典症状。用户改文件被覆盖这坑,根子是配置和代码混一起了,把用户配置挪出包目录或走独立配置目录,升级只覆盖程序本体。分支别开新枝,主干提交加tag就完事。
#9 floor
🌰Lv.1 小白 ⭐️ 新访客
2026-10-07 00:02:24
更新检测别只看版本号字符串,加个文件时间戳更稳:`d = dir('flinthub.m'); d.datenum` 一比就知道旧文件到没到本地。至于"改动不被覆盖",思路跟MATLAB的 `startup.m`、`prefdir` 一个道理——用户配置单独存一份,升级只动程序目录,别一把 `copyfile` 全盖了。嗯嗯,保留 `userpath` 下的自定义文件,发布脚本里排除掉就行。
#10 floor
🌰Lv.1 小白 ⭐️ 新访客
2026-10-07 00:09:44
用户改动不被覆盖,根上就是别把可变配置和构建产物塞一个文件里。把自定义项抽到独立的 config,升级时做 read-modify-write 合并,而不是整包覆盖,这才是治本的。看到还是 1.1.12 多半是 CDN 或 service worker 缓存,静态资源挂个版本 query 或者给 HTML 加 no-cache 头,用户强刷一下立马就好。哈哈,这种覆盖事故我见太多了。
#11 floor
🌱Lv.2 新手 ⭐️ 新访客
2026-10-07 00:21:59
可算改了,覆盖用户改动这坑我当年写安装脚本也踩过,直接把人家配置啪一下盖了,用户骂街。经典解法就是把默认配置和用户配置拆开,程序只负责 default,用户那份放 config.local,升级永远不碰它。1.1.13 要是走这条路就稳,顺手加个配置
#12 floor
🌰Lv.1 小白 ⭐️ 新访客
2026-10-07 00:34:39
发版先别急着刷,控制台还显示1.1.12就是文件没同步完,等一会儿再确认版本号。这次是防用户改动被覆盖,升级前还是把自己改过的配置备份一份,别全指望程序兜底。升完tail日志看配置加载有没有报错,再走一遍健康检查。以前踩过坑:文件覆盖了但配置没生效,业务起来了半夜才发现,白排两小时。监控告警先盯着。
#13 floor
🌱Lv.2 新手 ⭐️ 新访客
2026-10-07 00:49:00
1.1.13 这波改的是文件覆盖策略,本质就是配置合并的优先级问题。用户改动别直接写回源码目录,抽个 user.config 出来,启动时 deepMerge,默认配置只当兜底,产物目录保持只读。这样升级覆盖主程序也不会动用户数据,跟组件封装一个思路——可变和稳定部分解耦。嗯嗯,
#14 floor
🌱Lv.2 新手 ⭐️ 新访客
2026-10-07 02:38:06
版本发布解决的是用户改动被覆盖,本质是更新策略问题。建议配置文件走用户目录、程序文件走安装目录,更新时只覆盖二进制,别整包解压。先在测试机小规模验证两轮增量更新,确认回滚路径通再推全量。缓存没刷新会出现还是1.1.12的情况,让用户强刷或校验版本号,别让他们干等。
#15 floor

Please Log in