Windows 下 Agents 并行开发的环境配置建议
很多人说使用 AI 辅助开发,无脑选 mac,其中 AI 应用的功能是一方面,还有些系统底层的原因没有多少人提到,本文从 AI 辅助并行开发的角度进行分析分享,只要不是单仓单分支单线程开发的新手,都可以了解一下。
git 的多人合作机制基于 commit,我们可以理解 commit 是一次差异快照,描述了本次提交修改了哪些内容。如果两个 commit 对同一个文件的内容修改产生重合,就会产生冲突,而冲突是阻碍并行开发的原因。
为避免冲突,人在协作时分了 origin 仓、fork 仓,不同仓下有独立的 main 分支、feature 分支、fix 分支等。以往对于单人来说,同一时刻只需要单仓单分支即可满足大多数需求。但如果个人要同时进行多种可能性方向的研究,就可以使用 worktree。worktree 可以理解为分支的分支,也有人直接把文件夹单独拷贝一份,在同一分支进行不同修改,建议了解一下 worktree,直接拷贝和 worktree 的行为是相似的。
有些模型虽然聪明,但速度较慢。在同一文件夹内开多个会话修改,很容易导致冲突、缓存命中问题等。这时适合使用 worktree 为每个 agent 创建自己的工作空间,不会被其它 agents 的修改干扰。
创建 worktree 时,git 会选择一个 branch checkout 到新的文件夹,多个 worktree 的绝大部分文件都是相同的。如果文件系统支持 COW(copy on write)功能,这些相同文件就不会占用额外的存储空间,不会大量写入 SSD 硬盘,可以省空间和硬盘寿命。macOS 系统原生支持 COW,而 Windows 则需要一系列的配置。
首先 Windows 需要升级到 Win11,然后在“系统->高级->开发者人员驱动器”下进行配置,创建 refs 的虚拟磁盘挂载,将代码仓库迁到该 dev drive 上,refs 支持 COW,worktree 的创建和删除都是秒级响应。在没有 COW 功能时使用 worktree 的话,SSD 会出现大量狂写的问题。
借助 Windows dev drive,可以获得接近 macOS 的体验。Linux 上可以使用 btrfs 文件系统来托管代码仓库进行并行开发,原理都是为每个独立并行 agent 创建独立的 worktree,利用 COW 提高 worktree 创建效率,同时减少磁盘存储空间占用和寿命消耗。
---
原文链接:[点击查看](https://www.v2ex.com/t/1236495)
git 的多人合作机制基于 commit,我们可以理解 commit 是一次差异快照,描述了本次提交修改了哪些内容。如果两个 commit 对同一个文件的内容修改产生重合,就会产生冲突,而冲突是阻碍并行开发的原因。
为避免冲突,人在协作时分了 origin 仓、fork 仓,不同仓下有独立的 main 分支、feature 分支、fix 分支等。以往对于单人来说,同一时刻只需要单仓单分支即可满足大多数需求。但如果个人要同时进行多种可能性方向的研究,就可以使用 worktree。worktree 可以理解为分支的分支,也有人直接把文件夹单独拷贝一份,在同一分支进行不同修改,建议了解一下 worktree,直接拷贝和 worktree 的行为是相似的。
有些模型虽然聪明,但速度较慢。在同一文件夹内开多个会话修改,很容易导致冲突、缓存命中问题等。这时适合使用 worktree 为每个 agent 创建自己的工作空间,不会被其它 agents 的修改干扰。
创建 worktree 时,git 会选择一个 branch checkout 到新的文件夹,多个 worktree 的绝大部分文件都是相同的。如果文件系统支持 COW(copy on write)功能,这些相同文件就不会占用额外的存储空间,不会大量写入 SSD 硬盘,可以省空间和硬盘寿命。macOS 系统原生支持 COW,而 Windows 则需要一系列的配置。
首先 Windows 需要升级到 Win11,然后在“系统->高级->开发者人员驱动器”下进行配置,创建 refs 的虚拟磁盘挂载,将代码仓库迁到该 dev drive 上,refs 支持 COW,worktree 的创建和删除都是秒级响应。在没有 COW 功能时使用 worktree 的话,SSD 会出现大量狂写的问题。
借助 Windows dev drive,可以获得接近 macOS 的体验。Linux 上可以使用 btrfs 文件系统来托管代码仓库进行并行开发,原理都是为每个独立并行 agent 创建独立的 worktree,利用 COW 提高 worktree 创建效率,同时减少磁盘存储空间占用和寿命消耗。
---
原文链接:[点击查看](https://www.v2ex.com/t/1236495)
评论
暂无评论。