我的整个团队都在使用 docker,所以我们有类似的版本,有些人使用 Linux,有些人使用 Mac。当我调用 rails db:schema:dump 时,我看到结果中的差异很少:第一种是...
我的整个团队都在使用 docker,所以我们有类似的版本,有些人使用 Linux,有些人使用 Mac。当我调用时, rails db:schema:dump
我看到结果差异中存在一些差异:
第一种 是类型转换,像这样:
- t.check_constraint "status::text = ANY (ARRAY['active'::character varying, 'inactive'::character varying, 'deleted'::character varying]::text[])", name: "correct_status"
+ t.check_constraint "status::text = ANY (ARRAY['active'::character varying::text, 'inactive'::character varying::text, 'deleted'::character varying::text])", name: "correct_status"
这似乎完全无关紧要。如上所述,我们使用docker,但我甚至将主机上的PostgreSQL更新为与docker相同的版本(16.4-1),并清除了主机上与PostgreSQL相关的所有内容(例如,主机 pg_dump
上不再存在的内容)——仍然没有变化。
另一种 差异是
- t.check_constraint "checksum IS NOT NULL", name: "active_storage_blobs_checksum_is_not_null", validate: false
+ t.check_constraint "checksum IS NOT NULL", name: "active_storage_blobs_checksum_is_not_null
(在 active_storage_blobs 中,我们显然永远不会触碰它)。
我浏览了 stack overflow,所有帖子都建议保持版本不变,但这没有帮助。LLM 也无用。似乎没有 ENV 或语言环境可以影响它。
我陷入困境。