drizzle-kit check
本指南假定您已熟悉:
drizzle-kit check 命令可以让你检查已生成的 SQL migrations 历史是否一致。
当有多个开发者在项目中协作,并且在不同分支上修改数据库 schema 时,这个功能非常有用 - 更多内容请阅读 团队 migrations。
drizzle-kit check 命令要求你指定 dialect,
你可以通过 drizzle.config.ts 配置文件或 CLI 选项来提供它
使用配置文件
作为 CLI 选项
// drizzle.config.ts
import { defineConfig } from "drizzle-kit";
export default defineConfig({
dialect: "sqlite",
});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 没有正确检查 migrations,这是一个 bug。请把你的情况报告给我们,这样我们可以修复它
drizzle-kit check --ignore-conflicts扩展配置列表
我们建议通过 drizzle.config.ts 文件来配置 drizzle-kit,
但如果有必要,例如在 CI/CD 流水线等场景中,你也可以通过 CLI 提供所有配置选项。
dialect | required | 你正在使用的数据库方言。可以是 postgresql mysql sqlite turso singlestore mssql cockroach 中的一种 |
out | migrations 文件夹,默认值=./drizzle | |
config | 配置文件路径,默认值=drizzle.config.ts |
npm
yarn
pnpm
bun
npx drizzle-kit check --dialect=sqlite
npx drizzle-kit check --dialect=sqlite --out=./migrations-folder