不忽略 db.sqlite3 文件,即使我在 django 项目的 .gitignore 中指定

l.b*_*oya 3 python git django github gitignore

在我的 Django 项目中,我已经在根目录中以及 django 项目中都有 .gitignore 文件,但是当我触发git statusgit add .它将所有内容添加__pycache__ db.sqlite3到存储库中时。我需要从我的项目中删除这两件事。请帮忙。!

\n\n
\n

我分别在我的两个文件中尝试了诸如*.sqlite3mom/*.sqlite3mom/db.sqlite3和 之类的所有内容。但任何东西在任何目录下都不起作用。db.sqlite3.gitignore

\n
\n\n

这是我的主要 git 忽略文件.gitignore

\n\n
media\n*.sqlite3\n**/__pycache__/**\n*.pyc\n
Run Code Online (Sandbox Code Playgroud)\n\n

这是我的另一个 git 忽略文件.gitignore

\n\n
media\ndb.sqlite3\n**/__pycache__/**\n*.pyc\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n

我还尝试了在线资源中的许多可能性,但没有任何效果

\n
\n\n

文件结构

\n\n
MOM-PROJECT(local Repo)\n|\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80MOM (main project)\n|   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80media\n|   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80media\n|   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80MOM\n|   \xe2\x94\x82   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80migrations\n|   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80templatetags\n|   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80userprofile\n|   \xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80migrations\n|   \xe2\x94\x82       \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80__pycache__\n|   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80templates\n|   \xe2\x94\x82    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80MOM\n|   \xe2\x94\x82    \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80userprofile\n|   \xe2\x94\x82    \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80base.html\n|   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80manage.py\n|   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80requirements.txt\n|   \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80db.sqlite3\n|   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80.gitignore [another created after main]\n|\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80README.md\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80.git\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80.gitignore [Main]\n
Run Code Online (Sandbox Code Playgroud)\n\n

列出 git add 命令的添加文件

\n\n
    modified:   .gitignore\n    new file:   mom/.gitignore\n    new file:   mom/db.sqlite3\n    modified:   mom/meeting/admin.py\n    modified:   mom/meeting/views.py\n    modified:   mom/static/js/meetingtext.js\n    ...\n
Run Code Online (Sandbox Code Playgroud)\n\n

嗯,实际上首先我.gitignore在文件夹( )存在的文件夹中创建了文件。我的媒体文件夹自动删除,效果很好。但是当我添加或在 main 中时,它不会被忽略,因此我在存在的项目文件夹中创建了另一个文件。但这也没有忽略我的文件.gitin projectmom/db.sqlite3*.sqlite3.gitignore .gitignoredb.sqlite3db.sqlite3

\n\n

请建议我需要做什么。请不要建议我使用 Smart-Git 或任何其他 GUI 选项。现在我正在学习阶段,所以我需要通过命令行进行所有操作

\n

vic*_*uig 8

我也遇到了同样的问题,但发现我的问题是我在之前的提交中已经跟踪并提交了 db.sqlite3 文件,这使得当我后来将其添加到 .gitignore 时 git 无法忽略它。

我认为这不是你的情况,但也许它可以给你一些解决方案的提示。

要取消跟踪文件而不删除我使用的本地文件:

git rm -r --cached db.sqlite3

之后,.gitignore 将按预期完成工作。