drizzle-kit check

本指南假定您已熟悉:

drizzle-kit check 命令可让你检查已生成的 SQL 迁移历史的一致性。

当你有多个开发者在项目中协作,并且在不同分支上修改数据库 schema 时,这非常有用——更多内容请阅读 团队迁移




drizzle-kit check 命令要求你指定 dialect,你可以通过 drizzle.config.ts 配置文件提供,或者通过 CLI 选项提供

使用配置文件
作为 CLI 选项
// drizzle.config.ts
import { defineConfig } from "drizzle-kit";

export default defineConfig({
  dialect: "cockroach",
});
npx drizzle-kit check

一个项目中的多个配置文件

如果你的项目中有多个配置文件,这会非常有用,例如当你在同一个项目中有多个数据库阶段或多个数据库时:

npm
yarn
pnpm
bun
npx drizzle-kit check --config=drizzle-dev.config.ts
npx drizzle-kit check --config=drizzle-prod.config.ts
📦 <project root>
 ├ 📂 drizzle
 ├ 📂 src
 ├ 📜 .env
 ├ 📜 drizzle-dev.config.ts
 ├ 📜 drizzle-prod.config.ts
 ├ 📜 package.json
 └ 📜 tsconfig.json

忽略冲突

如果你需要 check 命令跳过交换性检查并绕过它,可以使用 --ignore-conflicts。如果你会想使用它,那么很大概率是 drizzle-kit 没有正确检查迁移,这是一个 bug。请向我们报告你的情况,以便我们修复它

drizzle-kit check --ignore-conflicts

扩展配置列表

我们建议通过 drizzle.config.ts 文件配置 drizzle-kit,不过如有必要,你也可以通过 CLI 提供所有配置项,例如在 CI/CD 流水线中等。

dialectrequired你使用的数据库方言。可以是 postgresql mysql sqlite turso singlestore mssql cockroach 之一
out迁移文件夹,默认=./drizzle
config配置文件路径,默认=drizzle.config.ts

npm
yarn
pnpm
bun
npx drizzle-kit check --dialect=cockroach
npx drizzle-kit check --dialect=cockroach --out=./migrations-folder