Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用两个github存储库中定义的两个python库进行实验的标准方法是什么?_Python_Git_Github_Pip_Virtualenv - Fatal编程技术网

使用两个github存储库中定义的两个python库进行实验的标准方法是什么?

使用两个github存储库中定义的两个python库进行实验的标准方法是什么?,python,git,github,pip,virtualenv,Python,Git,Github,Pip,Virtualenv,我想在github上试验两个可用的库。这些库提供setup.py文件。通常我用的是pipenv。因此,要从github安装库,我通常会: pipenv install git+https://github.com/org/repo.git#egg=lib-name 但这会将库安装在虚拟环境的lib文件夹中,如/home/user name/.local/share/virtualenvs/venv name/lib。我应该如何使这些库不安装在此lib文件夹中,但可以在我的工作区中使用,在那里我

我想在github上试验两个可用的库。这些库提供setup.py文件。通常我用的是pipenv。因此,要从github安装库,我通常会:

pipenv install git+https://github.com/org/repo.git#egg=lib-name
但这会将库安装在虚拟环境的lib文件夹中,如
/home/user name/.local/share/virtualenvs/venv name/lib
。我应该如何使这些库不安装在此lib文件夹中,但可以在我的工作区中使用,在那里我可以对它们进行必要的更改,并在某些py文件中使用?我想在我当前的工作区中简单地克隆两个。但是克隆它们不会安装它们的依赖关系。如何安装它们的依赖项而不将它们安装在lib文件夹中。是否将执行
pipenv安装。
调用其setup.py并仅安装其依赖项,而不安装其自身

还有一个问题:我想仅仅签出存储库并不能使它在我的py文件中可用。假设在签出两个库并创建py文件(并且我已经手动安装了这两个存储库的所有依赖项)之后,我有以下结构:

然后,我不能直接在
mypyfile1.py
中使用
lib1
lib2
中的模块,对吗

更新

我尝试将
lib1
lib2
移动到外部,即直接移动到
my_workspace
文件夹中:

my_worksace
|
|__ repo1 (unused)
|
|__ lib1 (cut pasted from inside repo2)
|
|__ repo2 (unused)
|
|__ lib2 (cut pasted from inside repo2)
|
|__ mypyfile1.py
|
|__ mymodule
      |
      |__ mypyfile2.py

现在我可以在
mypyfile1.py
中使用它们,但如果您对库进行更改,则不能在
mypyfile2.py

中使用它们
pip安装
从本地硬盘上的修改版本开始,或者推送到您自己的Github并从那里安装。你似乎混合了大量的问题,每个问题都应该有明显的解决方案和琐碎的重复。哦,那么我应该分叉、分支,然后分别克隆这些repo,对它们进行更改,提交、推送它们,然后将它们安装到我的目标venv中,在mypyfile中尝试使用它们?这是显而易见的标准方法(不是混合对回购协议的更改并使用它们),对吗?如果我完全理解你的问题,那听起来是一种合理的方法,也是合理的标准。
my_worksace
|
|__ repo1 (unused)
|
|__ lib1 (cut pasted from inside repo2)
|
|__ repo2 (unused)
|
|__ lib2 (cut pasted from inside repo2)
|
|__ mypyfile1.py
|
|__ mymodule
      |
      |__ mypyfile2.py