Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将本地Django sqlite数据库与服务器数据库同步?_Python_Django_Database_Git - Fatal编程技术网

Python 如何将本地Django sqlite数据库与服务器数据库同步?

Python 如何将本地Django sqlite数据库与服务器数据库同步?,python,django,database,git,Python,Django,Database,Git,我有一个Django 1.6项目,使用部署在数字海洋Ubuntu中的sqlite 我使用Git在服务器端更新我的项目。(Git克隆和Git拉取) 我的问题是:每次在本地更新数据库(例如添加一些新表)后,如何与服务器同步?使用git pull会导致无法解决的冲突。我可以使用git-fetch-all和git-reset-HARD来完成。但这似乎不是正确的方法 非常感谢您的帮助!提前感谢。按照以下步骤从本地推送到服务器 对models.py进行更改 使用此cmd将更改添加到git。>git add

我有一个Django 1.6项目,使用部署在数字海洋Ubuntu中的sqlite

我使用Git在服务器端更新我的项目。(Git克隆和Git拉取)

我的问题是:每次在本地更新数据库(例如添加一些新表)后,如何与服务器同步?使用git pull会导致无法解决的冲突。我可以使用git-fetch-all和git-reset-HARD来完成。但这似乎不是正确的方法


非常感谢您的帮助!提前感谢。

按照以下步骤从本地推送到服务器

  • 对models.py进行更改
  • 使用此cmd将更改添加到git。>git add models.py
  • 使用此cmd提交>git提交-m“您的消息”
  • git push>这将把您的本地更改推送到repo
  • 现在去服务器
  • 运行cmd>git状态
  • 查看是否对models.py文件进行了任何本地更改
  • 您可以使用>git diff models.py查看这些本地更改
  • 如果这些变更已经在您的回购协议中。使用此cmd放弃它们>git checkout models.py
  • 现在运行cmd,它将从服务器获取您的最新更改。>git pull
  • 注意:对克隆中的任何文件所做的所有更改都使用相同的命令

    用于同步数据库的南方迁移:

    首字母: 1.python manage.py模式迁移——初始 2.python manage.py迁移——假

    对数据库进行任何更改并执行以下步骤: 1.python manage.py模式迁移--自动 2.python manage.py迁移

    不要签入在应用中创建的迁移文件夹,因为它将在本地克隆和生产克隆之间发生冲突


    注意:所有南方迁移的历史记录都存储在数据库的south_migrations表中。

    感谢您的快速回复。model.py上的冲突可以解决,因为它是可编辑的。问题出在db.sqlite文件中,该文件不可编辑。我看到一些帖子说不应该使用git来同步数据库,但我想知道是否有什么方法可以做到这一点?顺便说一句,我以前是南迁的。嘿,史蒂文,我编辑了答案,按照步骤来做。在1.6版和django 1.7版之前,南方是实现这一目标的最佳方式,因为它拥有对迁移的本地支持。如果它解决了你的问题,请接受我的回答。谢谢