我应该 运行 "pip install -r requirements.txt" 在我的 Git 存储库中,还是在专用的父目录中?
Should I run "pip install -r requirements.txt" inside of my Git repository, or in a dedicated parent directory?
我想知道在本地 Git 克隆中有一个(未跟踪的)虚拟环境文件夹是否被认为是错误的目录结构。
将存储库和虚拟环境放在一个文件夹中似乎更干净,但也更笨拙和笨重。
以下是我正在考虑的两个选项:
A.
git_clone/
virtual-environment/
乙。
name_of_project/
git_clone/
virtual-environment/
这个问题与这个问题类似,但是针对 users/contributors 而不是维护者。
Is it bad to have my virtualenv directory inside my git repository?
将 requirements.txt 复制到父文件夹并在那里使用 PIP。 PIP 就像 NPM,它直接将依赖项安装到 OS(与 snapd 不同),虽然这无关紧要,但安全总比抱歉好!
为了决定,我回答问题 "will I reuse my virtual env in multiple projects?" 如果是,那么我将虚拟环境放在工作树之外。如果不是,那么我将虚拟环境放在工作树中。
至于重用,项目往往不依赖于同一套库。即使它们确实依赖于同一组库,项目也依赖于特定版本的库。因此,在工作树中拥有专用的虚拟环境是一种简单的方法,可以避免在上述情况下因不正确或无关的依赖项而导致问题。
在成本方面,虽然专用虚拟环境会导致重复,但我的大部分虚拟环境都在几十 MB 的数量级; space 的小价格,以避免由于不正确的依赖项造成的麻烦。如果额外 space 确实是一个问题,那么可以根据需要创建、使用和删除虚拟环境,因为创建虚拟环境非常容易(例如,通过 pip 和 requirements.txt)。
我想知道在本地 Git 克隆中有一个(未跟踪的)虚拟环境文件夹是否被认为是错误的目录结构。
将存储库和虚拟环境放在一个文件夹中似乎更干净,但也更笨拙和笨重。
以下是我正在考虑的两个选项:
A.
git_clone/
virtual-environment/
乙。
name_of_project/
git_clone/
virtual-environment/
这个问题与这个问题类似,但是针对 users/contributors 而不是维护者。
Is it bad to have my virtualenv directory inside my git repository?
将 requirements.txt 复制到父文件夹并在那里使用 PIP。 PIP 就像 NPM,它直接将依赖项安装到 OS(与 snapd 不同),虽然这无关紧要,但安全总比抱歉好!
为了决定,我回答问题 "will I reuse my virtual env in multiple projects?" 如果是,那么我将虚拟环境放在工作树之外。如果不是,那么我将虚拟环境放在工作树中。
至于重用,项目往往不依赖于同一套库。即使它们确实依赖于同一组库,项目也依赖于特定版本的库。因此,在工作树中拥有专用的虚拟环境是一种简单的方法,可以避免在上述情况下因不正确或无关的依赖项而导致问题。
在成本方面,虽然专用虚拟环境会导致重复,但我的大部分虚拟环境都在几十 MB 的数量级; space 的小价格,以避免由于不正确的依赖项造成的麻烦。如果额外 space 确实是一个问题,那么可以根据需要创建、使用和删除虚拟环境,因为创建虚拟环境非常容易(例如,通过 pip 和 requirements.txt)。