@deterministic-code/migraters

中文文档
0.0.19发布于 2026/11/07ES Module近 30 天下载 4185

用于确定码(型号、生锈、csharp)的移动可执行文件.

中文使用文档
文档目录15 节
  1. 安装技能
  2. 安装
  3. 从 npm 安装
  4. 技能提示
  5. 快速实例
  6. 图标
  7. 输入
  8. 设置
  9. 上来
  10. 下来
  11. 创建
  12. API 密码
  13. 语文支助
  14. 供应商
  15. 规格

忧郁症

CI

Migraters 允许您在开发过程中保存 SQL 变化, 以便后期在上游应用 。 随着代码库的复杂程度和团队规模的增长,跟踪和同步这些变化变得更加困难。 弥撒是为此而建的.

典型的工作流程是:

  • 在发展方面,创建一个或多个移民档案,对其进行测试,并运行移民.
  • 在部署时,这些脚本被复制到制作中,并再次迁移,因此上游数据库与开发匹配.

迁移命令可用于 许多语言 支助 许多 SQL 方言。 。 。 .

安装技能

Claude或Cursor的代理技能: 技术/技能。 。 。 .

npx skills add https://github.com/deterministic-code/migraters/tree/main/skill -g -a cursor -a claude-code -y --copy

安装

从 npm 安装

npm install @deterministic-code/migraters

技能提示

自然语言促使 技能 直接映射到 CLI 命令 :

提示运行
安装 sqlite 和 postgres 的迁移器npm install → npx migrate-init --language typescript --dialect sqlite --dialect postgres
添加驱动程序预告npx migrate-init --language <language> 包含先前的方言 加号 oracle
创建新迁移npx migrate-create
向上迁移npx migrate-up
向下迁移npx migrate-down

快速实例

user.sql数字 :

CREATE TABLE users (
  id INTEGER PRIMARY KEY,
  email TEXT NOT NULL
);
npx migrate-init --language typescript --dialect sqlite
npx migrate-setup --provider sqlite --connection ./app.sqlite
npx migrate-create --provider sqlite --name add_users
touch user.sql
cat user.sql > sql/sqlite/migrations/0001_add_users_up.sql
npx migrate-up --provider sqlite --connection ./app.sqlite

图标

输入

这个 migrate-init 命令安装语言和数据源依赖,并构建迁移命令.

npx migrate-init --language typescript --dialect sqlite --dialect postgres
npx migrate-init --language csharp --dialect sqlite
npx migrate-init --language rust --dialect sqlite

设置

创建 migrates 财务报告和审定财务报表 migrate_logs 表格和迁移目录。 同上,注:.

npx migrate-setup --provider <sqlite|postgres|mysql|sqlserver|oracle> --connection <url> [--migrations-path <dir>] [--and-up] [--create-database] [--batch-separator <token>]

--create-database 创建名为 --connection 如果它不存在的话. --and-up 运行 migrate-up 设置后马上。 默认迁移目录为 ./sql/<dialect>/migrations。 。 。 .

上来

应用每一个待迁移, 每一个在自己的交易.

npx migrate-up --provider <…> --connection <url> [--migrations-path <dir>] [--migrations-root <dir>] [--one] [--batch-separator <token>]

--migrations-root 看着下面 <root>/<dialect>/migrations 默认为 sql。当 --migrations-path 已经设定. --one 仅适用下一次待定的迁移。 批量分隔线从 GO 默认( sqlcmd- style),或带有 --batch-separator。跟踪 -- 注释或 YYYY-MM-DD 允许约会。 每批分别执行.

下来

倒退了最近应用的迁移,一步。 类型 confirm 或通过 --confirm。 。 。 .

npx migrate-down --provider <…> --connection <url> [--migrations-path <dir>] [--migrations-root <dir>] [--confirm] [--batch-separator <token>]

创建

写下一个 <NNNN>_<name>_up.sql 财务报告和审定财务报表 <NNNN>_<name>_down.sql 双人 名称必须匹配 ^[a-z][a-z0-9_]*$。 。 。 .

npx migrate-create --provider <…> --name <snake_case_slug> [--migrations-path <dir>]

API 密码

四个 IMigrater 动词是每种语言的一种合同: cli.yaml, (中文(简体) ), IMigrater 内 api.yaml。每种语言都执行该接口。 插入并删除目录 up 财务报告和审定财务报表 down。 。 。 . migrate-init 仅居住在 cli.yaml。 。 。 .

动词类型脚本 IMigrater锈 IMigraterC# (韩语) IMigrater
设置setupsetupSetup
上来upupUp
下来downdownDown
创建createcreateCreate

语文支助

数据源C# (韩语)锈类型脚本
块状对对对
邮资对对对
密苏里语name对对对
sqlserver 服务器对对对
预告对对对

供应商

sqlite, (中文(简体) ), postgres, (中文(简体) ), mysql, (中文(简体) ), sqlserver,以及 oracle。 。 。 .

何时 --connection 省略,跑者读取该方言的第一组环境变量:

提供者环境变量
块状SQLITE_PATH, (中文(简体) ), DB_PATH
邮资PG_CONNECTION_STRING, (中文(简体) ), DATABASE_URL
密苏里语nameMYSQL_URL, (中文(简体) ), DATABASE_URL
sqlserver 服务器MSSQL_URL, (中文(简体) ), DATABASE_URL
预告ORACLE_CONNECT_STRING, (中文(简体) ), DATABASE_URL

规格

共享 argv、旗帜、别名、退出代码和命令行为 cli.yaml。 。 。 . IMigrater (单位:千美元)setup, (中文(简体) ), up, (中文(简体) ), down, (中文(简体) ), create生活在这里 api.yaml。 。 。 . migrate-init 仅限CLI。 SQL 拼写仍为提供者细节.

版本与发布记录

@deterministic-code/migraters 共发布 20 个版本,首次发布于 2026/10/20;过去 12 个月发布了 20 个版本。

版本发布日期距今
0.0.19latest2026/11/075 天前
0.0.182026/11/065 天前
0.0.172026/11/065 天前
0.0.162026/11/056 天前
0.0.152026/11/056 天前
0.0.142026/11/056 天前

关于 @deterministic-code/migraters 的常见问题

@deterministic-code/migraters 是什么?

用于确定码(型号、生锈、csharp)的移动可执行文件.

如何安装 @deterministic-code/migraters?

在项目目录运行 npm install @deterministic-code/migraters,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 migrate-up、migrate-down、migrate-init、migrate-setup、migrate-create,可以用 npx migrate-up 直接运行。

@deterministic-code/migraters 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/deterministic-code__migraters 是否存在。

@deterministic-code/migraters 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@deterministic-code/migraters 可以商用吗?

@deterministic-code/migraters 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@deterministic-code/migraters 的下载量有多少?

根据 npm 官方下载统计,@deterministic-code/migraters 在 2026/10/12 – 2026/11/10 这 30 天内被下载 4,185 次,日均约 140 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@deterministic-code/migraters 还在维护吗?

最新版本 0.0.19 发布于 2026/11/07(5 天前);至今共发布 20 个版本,其中过去 12 个月发布了 20 个;首次发布于 2026/10/20。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。