开发者生态
evening
软件是在提交之间制作的
2026-06-11
1 阅读
jeremy_k
我从来都不热衷于拉取请求。在代理出现之前,人们更容易相信在快照上交换评论的仪式是软件协作的有效方式,但它从未真正对 Zed 团队起作用。我们经常在同一个工作树中一起工作,通过在编写代码时讨论代码来建立信任和共同理解。 GitHub 不允许你在提交和推送之前谈论代码,但到那时我们最重要的对话通常已经结束了。因此,我们在 2021 年创立了 Zed,以超越承诺的限制。我们的计划是建立一个值得世界上最好的开发人员使用的编辑器,然后提供一种更好的方式在其中合作。当时我们没有预见到,我们多年来在人与人合作的背景下思考的问题在与代理合作时会变得更加重要。生成代码的对话越来越成为我们软件的真正来源。该对话不断展开,并且必须在代码发生变化时交叉引用。 Git 是围绕离散提交组织的,它的设计从来就不是为了支持这一点。所以我们正在构建一些东西。我们称之为 DeltaDB,一种建立在单一连贯抽象之上的新型版本控制,可将您与代理的对话以及他们编辑的工作树转换为共享工件。自从我去年秋天第一次谈论它以来,我们已经取得了很大的进展,并且测试版将在几周内准备就绪,我很高兴能分享更多有关我们即将推出的产品的信息。每次操作,不仅仅是每次提交,DeltaDB 都会将您的工作分解为细粒度的增量流。 Git 在每次提交时捕获快照,而 DeltaDB 则捕获其间的每个操作并为每个操作提供稳定的身份。因为每个增量都可以单独解决,所以您可以在其演变过程中的任何时刻指向代码,即使它不断变化。这让我们可以随着工作树的发展以及驱动它的对话对其进行版本控制。消息和它产生的编辑是并排记录的,因此两者不会相互偏离。由于 DeltaDB 嵌入了无冲突的复制工作树,许多人和代理可以在不同的机器上同时编辑相同的文件。这些文件是真实的:代理通过终端在其中工作,并且只要您需要自己的工具,就可以将整个工作树安装到磁盘上。源代码现在是源对话 因为每个引用都锚定到增量而不是行号,所以当代码在其下方移动时,它会保留下来。从过去对话中的任何一行,您都可以跳转到当前的代码或代理编写代码时的代码。从任何一行代码中,您都可以找到生成该代码的对话以及此后触及该代码的每个对话。代理商也可以利用它。他们了解正在接触的代码背后的上下文,或者召集之前处理该代码的代理,并询问为什么要这样编写。您不需要承诺协作我们真正追求的很简单:与代理的对话成为您唯一需要进行的对话。团队成员可以在工作仍在进行时加入,与完成工作的代理交谈,并在他们进行时进行注释,而无需等待您先提交和推动。拉取请求、审查线程和内联注释的存在是为了在事后将讨论重新附加到代码中,因为讨论和代码位于不同的位置。把它们放在同一个地方,仪式就消失了。 Git 和 CI 保留了它们擅长的地方:运行检查并将您与世界其他地方连接起来,而不是被迫进行协作。接下来软件现在是在对话中形成的,而不是在提交中。 DeltaDB 是为此构建的版本控制,几周后我们将开始将其交付给早期用户。如果您想成为第一批尝试者,请加入候补名单。相关文章 查看 Zed 团队的类似博客。我们构建人工智能功能不是为了钱精选| 2026 年 5 月 5 日在 Zed 中引入并行代理 |精选| 2026 年 4 月 22 日 Zed AI 简介 |精选| 2024 年 8 月 20 日 正在寻找更好的编辑器?您现在就可以在 macOS、Windows 或 Linux 上尝试 Zed。立即下载!我们正在招聘!如果您对我们博客上涵盖的主题充满热情,请考虑加入我们的团队,帮助我们引领软件开发的未来。