drizzle-kit check

本指南假定您已熟悉:

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

当多个开发者在项目中工作并在不同的分支上更改数据库模式时, 这非常有用 - 了解更多有关 团队迁移




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

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

export default defineConfig({
  dialect: "postgresql",
});
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
📦 <项目根目录>
 ├ 📂 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=postgresql
npx drizzle-kit check --dialect=postgresql --out=./migrations-folder