2026年3月30日,Atlassian干了一件让中小团队血压飙升的事:把Jira Cloud唯一的自动化备份API关了。替代方案?Premium或Enterprise专属付费插件。Standard计划用户,自生自灭。
David Malko的团队在Standard档。他的项目数据每晚需要备份,迁移到Premium每年要多付几千美元。「这不叫升级,这叫绑架。」他在GitHub写道。
Atlassian的算盘很简单:把基础设施功能变成增值服务。但Malko的回应更简单——自己写了一个。
48小时,从零到可用
Malko用了一个周末。工具叫jira-project-backup-restore,基于Jira REST API v3,纯Python,零依赖Atlassian的付费接口。
安装只需要一行:pip install jira-project-backup-restore。
备份单项目:python main.py --backup PROJ。多项目批量:python main.py --backup PROJ1,PROJ2 --skip-existing。恢复时支持--dry-run预演,确认无误再执行。
Malko在README里埋了个细节:恢复时可以指定--target NEWPROJ,把备份灌进全新项目。这对测试环境克隆、跨实例迁移很管用——而Atlassian的原生方案,项目级恢复一直是灰色地带。
为什么Standard用户被精准打击
Jira Cloud的定价分层像一把手术刀。Standard计划每月每用户约7.75美元,Premium跳到15.25美元,差距近一倍。但Premium的「高级」功能列表里,很多是Standard曾经免费或半开放的。
备份API的 deprecated 不是技术债,是收入工程。Malko算过:他的团队20人,切到Premium每年多付约1800美元。而他自己写工具的成本?「两杯咖啡,加一个失眠的周六。」
更微妙的是风险不对称。Atlassian的付费备份方案走官方支持通道,SLA清晰。Malko的开源工具?「PRs and feedback welcome」——没有质保,没有客服,代码全裸。
但中小团队的选择空间被压缩了。要么掏钱买安心,要么赌一把社区方案。Malko选了后者,顺便把赌局公开。
REST API v3的隐藏菜单
Atlassian没封死所有路。REST API v3对Standard计划仍然开放,只是官方不再提供「打包好的备份体验」。Malko的工作,本质是把分散的API调用串成工作流:遍历项目配置、拉取议题(Issue)数据、处理附件、重建工作流状态。
这不算逆向工程,算体力活。Jira的数据模型复杂,自定义字段、权限方案、屏幕配置层层嵌套。Malko的版本1.0支持核心数据,README诚实标注了限制:某些高级插件数据、复杂权限继承可能需要手动补刀。
「够用」是他的设计哲学。不是替代Atlassian全家桶,是给被踢出付费墙的人一条逃生通道。
GitHub仓库上线一周,Star数没爆,但Issue区开始活跃。有人提PR支持多线程下载加速,有人反馈附件路径在Windows下的编码问题。Malko逐条回复,典型的个人项目节奏——白天上班,晚上Merge。
一个信号,两种读法
这件事可以往大了说:云厂商的「功能降级-付费解锁」套路,正在把开发者逼成自给自足的孤岛。也可以往小了说:一个程序员周末的副产品,碰巧填了一个商业决策留下的坑。
Malko自己没表态。他的代码注释比README还简短,提交信息是标准的imperative mood:「Add retry logic for rate limits」「Fix attachment download on empty fields」。
但他在隐藏一条评论的按钮上停过鼠标——那是有人质疑「这工具会不会让Atlassian法务找你」。他选择了「Hide」,没选「Block」。
工具还在迭代。最新commit加了配置文件支持,不用每次敲命令行参数。Malko没写路线图,但用户已经在问:Jira Service Management支持吗?Confluence版本有计划吗?
Atlassian的付费墙还在那儿。只是墙根下,多了一架别人搭的梯子。
你的团队数据备份方案是什么——买服务,还是造轮子?
热门跟贴