菜单

开发环境设置

相关源文件

本文档涵盖了 Vite 项目贡献者的开发环境设置和工作流程。内容包括仓库设置、构建系统配置、开发工作流程和测试基础设施。

有关 CI/CD 流水线的信息,请参阅 CI/CD 流水线。有关文档系统详细信息,请参阅 文档系统

存储库结构

Vite 是一个使用 pnpm workspaces 的 monorepo,具有专为模块化开发设计的目录结构。

来源:CONTRIBUTING.md1-356 packages/vite/rolldown.config.ts1-417

初始设置流程

设置过程遵循特定顺序,以确保正确的依赖解析和构建准备。

来源:CONTRIBUTING.md9-21

构建系统架构

构建系统使用 Rolldown,并针对不同的输出目标和开发场景提供多种配置。

来源:packages/vite/rolldown.config.ts16-181 packages/vite/rolldown.dts.config.ts36-53

开发工作流程组件

开发工作流程整合了多种工具和流程,以实现高效的贡献开发。

组件目的关键文件命令
包管理器工作区管理pnpm-workspace.yaml, package.jsonpnpm i, pnpm run build
类型系统TypeScript 编译tsconfig.json, src/*/tsconfig.jsonpnpm run build-types-check
构建系统包生成rolldown.config.ts, rolldown.dts.config.tspnpm run build
开发服务器实时重新加载packages/vite/src/node/pnpm run dev
测试框架验证vitest.config.e2e.ts, playground/pnpm test
文档VitePress 文档docs/, vite.config.tspnpm run docs

来源:CONTRIBUTING.md11-47 packages/vite/rolldown.config.ts1-417

测试基础设施

测试系统结合了使用 Vitest 和 Playwright 的单元测试和集成测试。

来源:CONTRIBUTING.md142-184

开发环境配置

平台特定设置

不同平台需要特定的配置调整,以获得最佳开发体验。

Windows 配置

  • 启用开发者模式以创建符号链接
  • 使用 core.symlinks = true 配置 git
  • 使用 Corepack 管理 pnpm 版本

Git 配置

  • 设置 .git-blame-ignore-revs 以处理格式更改
  • 配置提交消息约定验证

来源:CONTRIBUTING.md23-34

调试设置

开发环境支持多种调试方法,以应对不同场景。

来源:CONTRIBUTING.md89-122

依赖管理

Vite 遵循特定的依赖管理模式,以保持轻量级包和正确类型的支持。

依赖类别

类别位置目的示例
运行时依赖dependencies (依赖项)运行时必需rollup, esbuild
开发依赖项devDependencies (开发依赖项)仅构建时使用(预打包)大多数 npm 包
对等依赖项peerDependencies (对等依赖项)可选的框架支持框架插件
类型依赖项devDependencies (开发依赖项)TypeScript 类型@types/*

导入模式

  • 在 ESM 文件中使用 (await import('somedep')).default 而非 require()
  • 使用 Rolldown 预打包大多数依赖项
  • packages/vite/src/types 中为已打包的依赖项内联类型

来源:CONTRIBUTING.md48-78

构建验证

构建系统包含多个验证步骤,以确保代码质量和兼容性。

来源:CONTRIBUTING.md76-77 packages/vite/rolldown.dts.config.ts216-265