【发布时间】:2015-09-10 04:58:50
【问题描述】:
我有一个 django Web 应用程序启动并在 Azure 上运行。现在,当远程数据库发生更改时,我无法将其拉到本地(即使 sqlite3 文件包含在项目和提交中,它也不会检测到任何更改)。如果我尝试同步或推送,远程数据库会被我的本地数据库重置/覆盖。我不能简单地使用 git ignore 技巧,因为我需要在创建新模型后推送数据库(我假设远程数据库没有我的本地迁移)有人知道如何解决这个问题吗?这是我在 settings.py 文件中的数据库设置:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': path.join(PROJECT_ROOT, 'db.sqlite3'),
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
}
}
我的 git 忽略文件:
# Python cache
__pycache__/
*.pyc
# PTVS analysis
.ptvs/
# Build results
/bin/
/obj/
# User-specific files
*.suo
*.user
*.sln.docstates
# Auto-generated virtual environment
/env/
# Auto-generated web.config
/web.config
# Auto-collected static files folder
/static/
# Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Mac desktop service store files
.DS_Store
【问题讨论】:
-
能否将您的项目结构包括在 SQLite 文件所在的位置,以及
.gitignore文件? -
你确定
db.sqlite3在提交中被跟踪了吗?它是否显示在 git 正在跟踪的文件列表中? -
是的,我尝试在本地更改一些内容,当我向上推送时,更改也应用到了服务器上