3

我想摆脱自上次提交以来所做的一切,包括我创建的表,所以我做了

git reset --hard HEAD
git clean -f -d

所以这摆脱了我创建的迁移,但在架构中看起来表仍然存在。我知道我可以创建新的迁移来删除这些表,但我只是想知道未来的参考如何即使在数据库级别上也可以重置到最后一次提交。

我需要删除数据库中的表的另一个原因是,当我尝试创建迁移(模型)以创建确切的表时,它给了我一个错误并说它们已经存在。因此,如果我将其推送到 github 和生产环境,它不会创建表,因为迁移不存在。因此,我认为有必要通过某种方式(最好是回滚)在本地删除创建的表,然后重新创建迁移。

(我正在使用 PostGreSQl)

4

1 回答 1

1

所以我暂时解决了这个问题,但可能不是最理想的方法。我刚刚创建了迁移以删除表,运行 rake db:migrate,然后删除了迁移。所以这样一来,就好像从来没有发生过一样。

于 2012-05-13T23:05:18.160 回答