我有两个版本的相同迁移(坏习惯,我知道)。我多次删除旧版本,但在重新启动我的项目(或使用它做一些事情,比如rake db:test:prepare)之后,该文件显示在我的migrate文件夹中。当我运行rake db:migrate时,它会抱怨多个具有相同名称的迁移。
如何完全删除迁移文件?是否有我需要删除的注册表以防止它返回?
答案 0 :(得分:2)
您是否从回购更新?我没有看到原始文件是如何恢复的。
您也可以从schema_migration表中删除该条目,但这只是跟踪它是否已运行(IIRC)。
答案 1 :(得分:1)
git add
只会添加新的和已更改的文件,但不会删除已删除的文件。要删除:
git rm db/migrate/<filename>
或者如果您已经从文件系统中删除了它:
git add -u