Python 如何使用诗歌管理可编辑共享库?
我有两个python项目A和BPython 如何使用诗歌管理可编辑共享库?,python,git,virtualenv,continuous-deployment,python-poetry,Python,Git,Virtualenv,Continuous Deployment,Python Poetry,我有两个python项目A和B A取决于B B是其他项目使用的共享库 B构建和安装需要很长时间 以前,当我必须在新计算机上设置开发环境时,工作流程是: 创建虚拟环境 git克隆A和B 运行B的安装程序 运行A的安装程序 现在我可以编辑A和B并将更改推送到git,而无需每次都在A和B上重新运行安装程序 现在,我想把诗歌融入我的工作流程。理想情况下,我希望能够git克隆A并运行安装A,并使其镜像我的上述设置,但我在通过A的设置安装B时遇到了问题,同时仍保持B的可编辑性。基于此,在两个项目之间共享
- A取决于B
- B是其他项目使用的共享库
- B构建和安装需要很长时间
git克隆A
并运行安装A
,并使其镜像我的上述设置,但我在通过A的设置安装B时遇到了问题,同时仍保持B的可编辑性。基于此,在两个项目之间共享venv似乎是不可能的
我的权宜之计是:
- git克隆A和B
- 诗歌安装B
- 编辑A的pyproject.toml以指向我手动安装的B目录(
)B={path=“../B/”}
- 诗歌装置
[tool.poetry.dependencies]
python = "^3.7"
# B = {git = "https://repo.com/myrepo/B.git"}
B = {path = "../B/"}
编辑:我意识到,如果我在A之前安装B,并且在安装A之前编辑pyproject,我可以阻止2安装B,我不确定这是否解决了您的问题,但您可能可以通过先创建虚拟环境,然后在其中安装两个项目的依赖项,将一个venv用于两个项目(这是您想要的吗?) 我现在无法验证,但类似的内容可能会有所帮助:
# create the virtual environment and activate
$ python3 -mvenv .venv
$ . .venv/bin/activate
# install dependencies of both projects in it
$ cd B
$ poetry install
$ cd ../A
$ poetry install