推荐的将git克隆到虚拟Python环境中的工作流程

时间:2019-03-10 12:22:52

标签: python git virtualenv

如果我想将git repo放入虚拟Python环境中,建议的工作流程是什么?我认为最简单的方法是:

  1. 创建一个空目录
  2. cd进入git clone <repo>,因为它只能在空目录中使用
  3. 在同一目录的子目录中创建虚拟环境
  4. 启动VE并从<repo>安装requirements.txt。
  5. 将子目录(以及其他仅用于我的眼睛)添加到.gitignore
  6. 按计划进行项目
  7. 可能会要求将有价值的/可共享的结果推送到原始回购中。

还是有更好的方法?

免责声明:我对git相当满意,请多多包涵。我知道已经有多个类似的答案,但是我找不到令人信服的TL; DR。也许我错过了。

1 个答案:

答案 0 :(得分:1)

这就是我想要做的:

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。因为它创建了一个 new 目录,所以它并不关心当前目录是否为空。

更新

看,我们在一个非空目录中:

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