上传在Github上的虚拟环境中设置的Django项目

时间:2014-12-13 10:59:20

标签: python django git

我刚刚开始学习Django,而且我在项目的“副本”方面遇到了一些问题。 我有两台电脑,我想用两台电脑进行开发。当我学习PHP时(当时我甚至不知道如何使用Github),我所要做的只是在两台计算机上设置一个网络服务器,并通过Google Drive(从一台计算机)上传整个文件,然后下载它来自另一台电脑。

然而,在我看来,Django有点不同,因为它是一个框架,并且在开始一个项目之前有很多设置(包括虚拟环境;我正在关注Youtube教程,它说我会更好如果我使用virtualenv)。我认为仅仅通过将整个项目文件夹下载到另一台计算机就不行了。

目前,我已经在Github上传了整个虚拟环境文件夹。

所以,列出我的问题,

  1. 在另一台计算机上下载时,我应该在该计算机上设置虚拟环境,然后下载该文件夹吗?...
  2. 有什么方法可以自动同步或提交项目中已更改的文件? (也就是说,我必须更改django项目中的许多文件(视图,网址,设置......等),但是很难记住我已经更改的所有文件,然后单独提交那些文件)
  3. 任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:2)

我建议你也安装virtualenvwrapper(here)。 virtualenvwrapper将除项目之外的所有文件保存在另一个位置,这样您的项目目录只包含您的文件,您可以安全地使用git add --all

安装完成后,执行:

$ mkdir my-project; cd my-project
$ mkvirtualenv my-env-name
$ pip install django <more-good-stuff>
$ pip freeze > requirements.txt
$ git init; git add --all; git commit -m "Initial Commit"
... push to github ...

现在转到其他计算机,然后安装virtualenvvirtualenvwrapper

$ git clone <url> my-project; cd my-project 
$ mkvirtualenv my-env-name
$ pip install -r requirements.txt
... continue your work, commit and push push and win at life :D

答案 1 :(得分:0)

你通常不想盲目地承诺一切。如果您使用git status查看您更改的所有文件,然后git add您要提交的文件,则会更好。在确认您确实要提交所有文件后,您可以git add --all(更多here)。然后你git commit

而且,是的,virtualenv是要走的路。您希望为项目创建virtualenv,并将所有依赖项放在requirements.txt文件中。这将允许您的git仓库中只有源代码和库,使其更清洁。这也可以让您在生产中拥有一组经过验证的库,如果您想尝试一个新库,您可以将它安装在您当地的virtualenv中。或者甚至有两个virtualenvs和switch,或者其他什么,它不会弄乱你的代码仓库或其他机器的安装。