Jujutsu 的创建者已加入 ERSC

一家专注企业的源代码管理初创公司 ERSC 的新员工引发了对 Jujutsu(“jj”)的关注;它是一个兼容 Git 的版本控制系统,承诺以通用 undo、延迟冲突解决和更容易的提交重塑等特性带来更安全、更直观的工作流。评论者讨论了 jj 以 Git 为后端的设计如何相较以往的 Git 替代方案降低切换成本,而 ERSC 则旨在为大型 monorepo 和 AI 辅助开发构建下一代后端,而不是像 GitHub 那样的社交编程站点。讨论串还提到了围绕 jj 的 Google 贡献者许可协议的担忧、ERSC 带动画营销网站的性能与无障碍问题,以及企业是否会在这样一个基础性的工具层面接受新的供应商。

关于 ERSC、JJ 和 Google 的澄清

  • JJ(Jujutsu)是一个采用 Apache 2.0 许可的 OSS VCS,目前使用 Git 的磁盘格式和协议,但算法和 UX 不同。
  • Google 并不拥有版权;贡献者保留版权。Google CLA 赋予 Google 广泛的许可权,但不是版权转让。
  • GitHub 组织从个人账户中迁出;Google 仍主要控制该组织,以继续维护 CLA bot,并持有“jj”商标。
  • 这位新员工离开 Google 加入 ERSC,但仍是 JJ 的核心维护者。维护者有意在公司代表性之间保持平衡。

ERSC 的产品方向

  • ERSC 将自己定位为“面向企业的下一代源代码管理”,而不是社交编程网站或直接的 GitHub 竞争对手。
  • 重点领域:突破 Git 在大型 monorepo 上的限制、按目录的 ACL,以及公司范围的工作流,尤其是在“agentic”/LLM 密集的环境中。
  • 他们正在构建一个新的后端(类比于 Google 的内部系统),并通过 Git 的 ingress/egress 以实现渐进式采用;JJ 是桥接客户端。
  • 初期的 go-to-market 仅面向企业,提供销售/上手支持,不过不会明确阻止个人用户。CI 起初将是“自带”。

技术讨论:JJ vs Git(以及 Mercurial)

  • JJ 提供:
    • 一等公民级的冲突,存储在提交中,从而支持延迟、增量式的冲突解决。
    • 事务性的操作日志,支持通用的 undo(适用于 rebase、merge、冲突解决等),超越了 Git 的 reflog。
    • 当历史发生变化时,自动对依赖的提交/分支进行 rebase。
    • 将工作副本、类似 index 的行为、stash 和冲突统一到一个模型中。
  • 拷贝/重命名跟踪和其他功能正在积极开发中。
  • 与 Mercurial 相比,JJ 旨在更快,并通过无缝的 Git 兼容性获得关注。

采用、UX 和工作流

  • 粉丝表示,历史编辑(重排、拆分、堆叠提交)要容易得多,实验更安全,冲突处理也更好。
  • 也有人认为,Git 的核心命令加上 GUI 已经足够,他们很少遇到 JJ 优势真正派上用场的问题。
  • 关于 Git 的 UX 存在争论:一些人认为,一旦学会 VCS 理论,它其实还不错;另一些人则认为 JJ 的心智模型清晰得多。
  • 可以在 Git 仓库上单方面使用 JJ;同事不必切换。TUI 工具(如 jjui)受到称赞。

许可、治理和所有权方面的担忧

  • 一些人担心 Google CLA 和商标会形成“达摩克利斯之剑”,并可能成为投资者的红旗。
  • 另一些人则认为,Apache 2.0、分布式版权以及可 fork/重命名的能力,足以缓解真正的锁定风险。

网站设计和性能反馈

  • 许多人称赞新的 ERSC 网站美观且延迟低。
  • 也有人报告在各种浏览器/操作系统上出现严重的 GPU 占用和糟糕的滚动性能;动画背景被认为是罪魁祸首,也是一个无障碍问题。
  • ERSC 承认了这些问题,正在推出修复(包括移除/减弱动画),并计划尊重减少动态效果偏好。