如果我想将git拉到虚拟Python环境中,那么推荐的工作流是什么?我认为最简单的办法是:
git clone <repo>
中,因为这只在空目录中工作。<repo>
。还是有更好的方法?
免责声明:我是一个相当n00b的git,请容忍我。我很清楚已经有多个类似的答案,但是我找不到令人信服的TL,也许我错过了。
发布于 2020-01-07 11:38:29
如果您想要将库克隆到要使用的项目中,那么下面的步骤将帮助您:
source .venv/bin/activate.fish
pip uninstall <package>
pip install -e git+ssh://git@github.com/<org>/<package>.git#egg=<package>
cd .venv/src/<package>
发布于 2019-03-12 15:39:20
我喜欢这样做:
git clone <repo> <repodir>
cd <repodir>
virtualenv .venv
. .venv/bin/activate
pip install -e .
就这样。现在,我所做的任何编辑都将在虚拟环境中“活”。我有一个全局.gitignore
文件(git config --global core.excludesfile ~/.gitignore
),其中包括.venv
,因此我不需要更新各个存储库中的.gitignore
。
请注意,您不需要在空目录中运行git clone
。因为它创建了一个新目录,所以它不关心当前目录是否为空。
更新
听着,我们在一个非空目录中:
bash-4.4$ ls
file1 file2 file3
我们可以在这里运行git clone
:
bash-4.4$ git clone https://github.com/git/git
Cloning into 'git'...
remote: Enumerating objects: 264438, done.
remote: Total 264438 (delta 0), reused 0 (delta 0), pack-reused 264438
Receiving objects: 100% (264438/264438), 112.69 MiB | 9.84 MiB/s, done.
Resolving deltas: 100% (196057/196057), done.
它运行时没有问题,并创建了一个新目录:
bash-4.4$ ls
file1 file2 file3 git
发布于 2022-07-22 15:18:32
据我所知,不建议将虚拟环境初始化并存储在项目的git目录中。在这种情况下,您的env空间暴露在某种粗俗中。其中:
.gitignore
文件中的内容,以避免不必要的env分发。python3-venv
列出所有env的简单方法。所以,很可能,如果你那样操作的话,你很难找到你有哪些可用的env。相反,推荐的方法是使用虚拟包装工具,即将所有env存储在一个特定的目录中,最常见的是在~/.virtualenvs
中。此工具有助于在env之间创建、删除和切换。请参阅本post中的更多内容。
综上所述,推荐的工作流:
virtualenvwrapper
mkvirtualenv $env_name
创建新的envgit clone <rep>
初始化您的代表pip install -r requirements.txt
环境下运行$env_name
https://stackoverflow.com/questions/55087632
复制相似问题