0

我正在开发一个网络应用程序,需要在两台计算机上完成工作,一台运行 Linux,另一台运行 Windows。

这个应用程序是在 Python 2.6.7 上使用 Pyramid 框架开发的(这是服务器运行的,我无法更改)

按照 Pyramid 网站上的教程,我在virtualenvLinux 机器上创建了一个,并创建了一个项目 - 对其进行了测试,它似乎在 Linux 机器上运行没有问题。现在为了将工作同步到 Windows,我想到了使用 git(带有来自 bitbucket 的免费私人项目)。我创建了一个 git 项目并将其推送到 bitbucket。我使用了这个.gitignore文件模板,并且还添加了这一行(我相信 venv 是特定于操作系统的,但我可能是错的):

venv

将项目克隆到 Windows 后,我没有 virtualenv - 如何创建与 Linux 机器上存在的 venv 兼容的 venv(我的 Windows 机器上安装了 Python 2.7,没有 sqlalchemy 等.)?什么是“正确”的做法?我应该只给应用程序(这是一个拼写错误,我现在先不说)Windows 并在虚拟机上使用 Ubuntu 吗?

编辑:

尽管我已经接受了 Rostyslav Dzinko 关于文件使用的回答,但正确的方法是在此过程中实际使用由金字塔的脚手架机制生成requirements.txt的内置内容。因此,如果有人遇到此问题,请考虑尝试:setup.pypcreate

python setup.py develop
4

2 回答 2

2

Virtualenv 为您的 Python 解释器创建虚拟环境。这意味着每个虚拟环境都可以安装不同版本的相同包或完全不同的包,这些包仅对您的项目(依赖项)很重要。

如果要管理依赖项,可以使用pip使新虚拟环境与旧虚拟环境同步。

您需要做的就是创建requirements.txt文件并用依赖项填充它,例如:

pyramid==1.0.1
...

让这个文件在你的 git 存储库中。

将源代码克隆到新机器上新创建的 virtualenv 后,您可以使用 pip 安装所有依赖项:

pip install -r requirements.txt
于 2012-08-14T14:21:03.377 回答
0

virtual-env 是安装在系统上的 Python 运行时环境。它不是您的代码库的一部分,因此不应该在您的 Git 存储库中。

在您使用的每台机器上单独安装一个虚拟环境。

于 2012-08-14T14:21:27.613 回答