如何防止 Django 在我提交 Git 时"忘记"信息?



我正在用 Django 做一个博客项目,我目前有一个版本在生产中运行。我一直在对开发版本进行更改,当我在 Git 上推送更改时,我注意到每次提交都会"清除"我存储在生产服务器中的信息。具体来说,a(在生产服务器上编写的某些博客文章和b(每当我推送新提交时,在生产服务器上添加的用户帐户似乎都会"消失"。

有人告诉我,这个问题可能是由于我使用了 sqlite(我使用 sqlite3(和我的本地开发数据库与我的存储库"混合"在一起。如果是这种情况,我该如何解决此问题。如果您怀疑这是由于其他问题引起的,原因可能是什么?

我是使用Django和Git的新手,尽管我已经使用Python一段时间了。我真的很感激任何和所有的帮助。为了便于使用,我的"文章"模型的一部分如下 - 文章代表博客文章。

class Article(models.Model):
title = models.CharField(max_length=255)
#Body is the "body" of our entry - self explanatory. 
body = models.TextField()
#date = models.DateTimeField(auto_now_add=True)
author = models.ForeignKey(
get_user_model(),
on_delete=models.CASCADE, 
)

.gitignore文件添加到存储库,向其添加行*.sqlite3,运行以下git rm --cached *.sqlite3

您的整个数据库都在 sqlite 文件中。开发中有一个当前由存储库跟踪的内容。每次在开发和提交中进行更改时,它都会用开发数据库覆盖您的生产数据库。

Git 提交不能让事情消失,也不能让推送命令消失。

如果我理解正确,您将 sqlite 文件包含在版本控制中。你不应该那样做。这样,您就可以在开发和生产之间混淆数据。

最新更新