GITversion control that renders

每一次提交,
都能被看见。

代码托管只能比较文字。MotionGit 的每个版本都能渲染成画面——你看到的是视频怎么变了,而不只是哪一行变了。

$ motion clone motiongit.com/@motiongit/prism-type
$ motion diff v1.0.0 v1.1.0 --visual
$ motion fork  --style night
$ motion propose "更柔和的入场节奏"

motion CLI 为规划中的命令行接口;当前可用 Git 后端与网页完成同样的流程。

Repositories13
Releases13
Styles14
Forks0
01

视频提交图

分支图上的每个节点都是一帧画面。派生、样式分支、合并回主线,一眼看清一个模板是怎么长大的。

v1.0.0首次发布
v1.1.0新增竖屏布局
a3f9e1派生 · 更柔和的入场
style/night样式分支 · 夜粉
v1.2.0声音对齐
v1.3.0合并 #18 更柔和的入场
mainfork/@linstyle/night
02

视觉 Diff

同一组输入、同一时刻,两个版本的画面直接叠在一起比。拖动中线看差别,右侧同时列出参数与源码改了什么。

v1.2.0
v1.3.0
frame 0144 / 0240 · 00:04:24

params.schema.json

  "accent": {
-   "default": "#C2D788"
+   "default": "#79C0FF"
  },
+ "easing": { "enum": ["soft","snap"] }

src/main.js

  const k = clamp01(t / 0.8);
- const e = 1 - Math.pow(1 - k, 3);
+ const e = ease[inputs.easing](k);
像素差异18.4%
动作窗原速保留
时长00:08 → 00:08
03

帧级 Blame

时间轴上的每一段是谁、在哪次提交里改的。悬停任一段,看到作者、提交信息和那一帧。

00:0000:0100:0200:0300:0400:0500:0600:0700:08
入场
标题
装饰
声音
出场
v1.0.0v1.1.0v1.2.0fork @lin
04

动态提案

改进以提案的形式回到原模板。审阅者看的是前后两段画面,可以在具体某一帧上留评论;通过后合并为新版本,贡献者署名保留。

Open#18 更柔和的入场节奏@lin wants to merge fork/@lin → main
before · frame 0012
after · frame 0012
L
@lin · frame 0012

入场从 cubic 改成 soft,标题落位不再“砸”下来。长标题(4 行)也测过。

M
@motiongit · frame 0030

竖屏下第三行和装饰圆环轻微重叠,能把圆环的 y 抬 4% 吗?

结构与完整性三种画幅渲染视觉差异 18.4%,需要审阅

以上为交互示意。派生已在模板页开放;提案、评审与合并随 Git 后端上线逐步开放。

05

仓库

平台上已发布的模板仓库。每个都可以派生、比较、提出改进。

06

最新提交

每个发布版都固定内容摘要,不可静默覆盖。