Pip、Virtualenv与Git项目搭建与引导
假设你有一个这样的项目结构:
-WebApp
|_ requirements.txt
|_ bootstrap.py (virtualenv bootstrap script)
|_ src
|_ setup.py
|_ develop-app
|_ somecode.py
|_ morecode.py
这个 bootstrap.py
是用 virtualenv 创建的:
https://virtualenv.pypa.io/en/latest/reference.html#creating-your-own-bootstrap-scripts
现在,整个 WebApp 目录都是一个 git 仓库(当然不包括 virtualenv)。这样做的目的是为了创建一个可移植的 virtualenv/git 环境。问题是,如果你把 develop-app
放在你的 requirements.txt
文件里作为开发依赖,它会把它安装在你的 virtualenv 目录的 /src 下,并且会在你的 virtualenv 的 site-packages 中创建一个符号链接。最终你会得到两份源代码——一份是 git 追踪的,另一份是在 Virtualenv 中使用但没有被 git 追踪的。
那么,你如何确保在 git 追踪的目录(develop-app
)中所做的更改能够自动更新到你的 virtualenv 中呢?
1 个回答
4
你可以不把你开发的应用程序加到requirements.txt这个列表里,而是直接从你的Git仓库运行代码。requirements的目的是为了说明你的开发应用需要哪些依赖,对吧?所以让我觉得有点奇怪的是,为什么要让它自己成为依赖呢?