☰
FreeCut工作区与项目管理:本地优先存储、ZIP备份与自动保存机制详解
2026/10/8 13:26:05 网站建设 项目流程

FreeCut工作区与项目管理:本地优先存储、ZIP备份与自动保存机制详解

【免费下载链接】freecutFreeCut is a professional-grade video editor that runs entirely in your browser. Professional video editing, zero installation. Create stunning videos with multi-track editing, keyframe animations, real-time preview, and high-quality exports.项目地址: https://gitcode.com/gh_mirrors/free/freecut

FreeCut 是一款完全运行在浏览器中的专业级多轨视频编辑器,主打本地优先(local-first)存储:项目、素材元数据、缩略图、波形与缓存全部以普通文件形式保存在你自己选择的工作区文件夹中,无需安装、无需上传。本文详解 FreeCut 的工作区模型、项目管理、ZIP 备份导出与自动保存机制,帮助你安全地创建、组织、迁移和备份剪辑工程。

什么是 FreeCut 工作区:一切皆本地普通文件

FreeCut 的工作区就是磁盘上的一个普通文件夹,它是应用的"唯一事实来源"(source of truth)。应用生成的所有内容都写在这里:

  • 项目文件(时间线、关键帧、标记、转场、设置)
  • 素材元数据、缩略图、波形、解码音频缓存
  • 转写文本、字幕、场景切点、AI 生成资产
  • 工作区索引与缓存镜像

关键特点:导入的源素材不会被复制进工作区,FreeCut 只在media/<id>/下记录一个指向原文件的链接描述(source.link.json)。因此工作区体积很小,而你的原始素材仍留在原处,可以像备份普通目录一样备份、同步或迁移。

工作区存储层源码位于 src/infrastructure/storage/workspace-fs/,官方工作区说明模板见 src/infrastructure/storage/workspace-fs/README.template.md。

工作区文件夹结构速览

打开你的工作区文件夹,可以看到清晰可辨的文件布局:

文件 / 目录作用
.freecut-workspace.json工作区标记 + 模式版本号
index.json快速项目列表索引
projects/<id>/project.json时间线、设置、关键帧、标记、转场
projects/<id>/media-links.json该项目引用的素材清单
media/<id>/metadata.json编码、时长、分辨率等元数据
media/<id>/source.link.json指向磁盘源文件的链接描述
media/<id>/cache/影条、波形、GIF 帧、解码音频等缓存
content/proxies/按内容指纹共享的低清代理文件

这些文件全部是明文可读的:project.json可以在外部直接编辑,FreeCut 下次加载时会读取你的修改;二进制缓存(波形、解码音频、影条)均可再生——删除后应用会按需重建。

💡 工作区内置了孤儿清理(orphan sweep)机制,会自动清理由失效素材遗留的无用文件,保持目录整洁。

如何选择、切换与重连工作区

  1. 首次启动时,FreeCut 会要求你先选择一个工作区文件夹(建议选"文档"等自己拥有的普通目录,避免系统保护位置)。
  2. 通过工作区(Workspaces)控件可添加、切换或移除已记住的工作区;切换只改变 FreeCut 使用哪个文件夹,不会移动你的源素材。
  3. 权限过期处理:出于安全考虑,浏览器可能在会话之间失效文件夹权限。当 FreeCut 提示"Reconnect your workspace"时,点击Reconnect并重新授予读写权限即可。
  4. 素材丢失处理:若链接的源文件被移动,可用Locate / Locate Folder重新定位,或用Browse Another Folder指向新副本;仅在计划稍后重链接时才使用Work Offline。
  5. 整体迁移:直接把工作区文件夹拷贝到新位置,下次启动时重新选择该文件夹即可,无需任何转换。

工作区门禁与入口组件位于 src/features/workspace-gate/,官方文档页参考 src/features/docs/pages/02-workspaces.ts。

项目创建与组织:从项目列表页开始

FreeCut 的项目管理功能集中在项目页面(路由 src/routes/projects/,UI 模块 src/features/projects/):

  • 新建项目:点击New Project,设置名称、描述、分辨率、帧率与背景色。分辨率预设覆盖 YouTube 1080p(16:9)、Shorts/TikTok(9:16)、Instagram 方形等常见投放平台,也支持自定义尺寸;画布范围从320x240到7680x4320。
  • 查找与组织:按名称搜索、排序、过滤;缩略图与元数据帮助你快速定位最近编辑的工程;Duplicate可以无风险地分出一个变体。
  • 当前工作区标识:项目页面会显示当前工作区,你永远知道工程保存在哪里。
  • 版本兼容:旧版项目会自动执行模式迁移升级(src/features/projects/services/project-upgrade-service.ts);早期纯浏览器 IndexedDB 存储的工程也会通过 src/infrastructure/storage/legacy-idb/migrate.ts 自动迁移到本地文件工作区。

回收站与恢复:软删除如何保护你的工程

删除项目在 FreeCut 中是软删除——工程目录完整保留,仅追加一个.freecut-trashed.json标记文件来隐藏它(实现见 src/infrastructure/storage/workspace-fs/trash.ts):

  • 恢复:在回收站分区点击恢复即可,标记移除后工程立即重新可见;
  • 清空回收站:永久删除已回收的工程及其独占引用的素材,不可撤销,请务必确认名称;
  • 自动清理:回收站中的工程超过默认 30 天保留期(TTL)后会被自动清除,避免磁盘长期占用。

这种"标记文件"设计还有一个好处:你在文件管理器中就能直观看到哪些工程处于已回收状态。

项目 ZIP 备份:一键导出 .freecut.zip 可移植工程包

需要跨机器协作、交付项目或做异地备份时,导出项目(Export Project)是首选方案:

  1. FreeCut 将工程连同其引用的所有素材打包为一个.freecut.zip捆绑包,内部包含项目快照、缩略图、动画预设、逐素材条目,以及带校验和(checksum)的清单文件(manifest)。打包逻辑见 src/features/project-bundle/services/bundle-export-service.ts,操作入口在 src/features/project-bundle/components/bundle-export-dialog.tsx。
  2. 在目标机器的另一个工作区中导入该捆绑包:FreeCut 会先校验清单(Zod 模式验证),再解压媒体文件到指定目录,重建工程、关联素材并处理名称冲突(src/features/project-bundle/services/bundle-import-service.ts)。

💡 捆绑包是"安全地把项目交给别人"的方式——它把链接的媒体随时间线一起携带,对方无需你原始的文件夹结构。

配合手动备份习惯:日常依赖自动保存 + 工作区同步,阶段性里程碑(交付、协作前)导出一份 ZIP,即可得到完整的本地优先 + 异地备份策略。

自动保存机制:默认每 5 分钟落盘一次

FreeCut 编辑器内置自动保存,防止标签页崩溃或意外关闭丢失工作:

  • 默认开启:autoSaveInterval默认为5 分钟(0 表示关闭),在 src/features/settings/stores/settings-store.ts 中定义,可在设置 → 通用里通过开关和间隔滑块调整。
  • 只在有改动时保存:自动保存 Hook(src/features/editor/hooks/use-auto-save.ts)检测到"脏"状态(isDirty)才会触发,避免无谓写盘。
  • 不打断编辑:保存动作被延迟到浏览器空闲时段(requestIdleCallback)执行,拖动片段、打关键帧等操作不会被 I/O 打断;即便持续忙碌,也保证 10 秒内落盘。
  • 失败有提示:保存失败会弹出错误 toast,你可以立即手动重试。

常见场景与最佳实践清单

场景推荐操作
换电脑继续剪辑拷贝整个工作区文件夹 + 素材,或导出 ZIP 捆绑包导入
释放磁盘空间使用缓存清理动作(波形、影条、解码音频等可再生数据),不会删除源素材
素材被移动Locate重新定位,或Browse Another Folder指向副本
误删工程回收站恢复(30 天内自动清除,请尽早处理)
浏览器提示无权限点击Reconnect重新授权同一文件夹
定期备份手动 ZIP 导出 + 工作区目录同步双保险

核心要点回顾:FreeCut 把工作区做成一个可读、可备份、可迁移的普通文件夹,项目以明文 JSON 存储,素材以链接而非副本方式管理;软删除 + 回收站兜底误操作,ZIP 捆绑包实现跨设备迁移,自动保存保障日常编辑安全。理解这套本地优先机制,你就能在浏览器里安心进行专业级剪辑,而不用再担心工程文件"存在哪里"。

【免费下载链接】freecutFreeCut is a professional-grade video editor that runs entirely in your browser. Professional video editing, zero installation. Create stunning videos with multi-track editing, keyframe animations, real-time preview, and high-quality exports.项目地址: https://gitcode.com/gh_mirrors/free/freecut

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询