我有 2 个 python 项目 A 和 B
- A 取决于 B
- B 是其他项目使用的共享库
- B 需要很长时间来构建和安装
以前,当我必须在新计算机上设置我的开发环境时,工作流程是:
- 创建虚拟环境
- git克隆A和B
- 运行 B 的设置开发
- 运行 A 的设置开发
现在我可以编辑 A 和 B 并将更改推送到 git,而不必每次都在 A 和 B 上重新运行设置。
现在,我想将诗歌整合到我的工作流程中。理想情况下,我希望能够git clone A
运行poetry install A
并让它镜像我的上述设置,但是我在通过 A 的设置安装 B 时遇到问题,同时仍然保持 B 可编辑。基于这个线程,似乎不可能在两个项目之间共享 venv。
我的权宜之计是:
- git克隆A和B
- 诗歌安装B
- 编辑 A 的 pyproject.toml 指向我手动安装的 B 目录(
B = {path = "../B/"}
) - 诗装A
我真的不喜欢这个工作流程,因为 A 的 pyproject.toml 现在只能在我的计算机上运行。我查看了问题线程和诗歌文档,但找不到处理这种情况的解决方案。非常感谢任何和所有建议。
A的pyproject.toml
[tool.poetry.dependencies]
python = "^3.7"
# B = {git = "https://repo.com/myrepo/B.git"}
B = {path = "../B/"}
编辑:我意识到如果我在 A 之前安装 B 并在安装 AI 之前编辑 pyproject 可以防止 2 安装 B