Вы, вероятно, должны выполнять большую часть своей работы по разработке в виртуальной среде . Ваш рабочий процесс для этого может выглядеть так:
# activate the virtual environment in ~/vpy
. $HOME/vpy/bin/activate
# install my app and its dependencies
cd $HOME/src/myapp
pip install -e .
# use my forked library instead
cd $HOME/src/forkedlib
pip install -e .
pytest # or whatever tests the forked lib has
# try it out with my application too
cd $HOME/src/myapp
pytest # or whatever tests your app has
myapp
pip install -e
делает что-то магическое, так что всякий раз, когда вы import
модуль в библиотеке, он направляется прямо в извлеченное дерево исходных текстов, так что если вы вносите изменения в forkedlib
, а затем повторно запускаете myapp
, вы увидите эти изменения напрямую.
Когда вы закончите, вы можете pip uninstall forkedlib
и затем повторно запустить pip install -e .
, чтобы переустановить (объявленные) зависимости вашего приложения. (Или удалите и заново создайте виртуальную среду, если это проще.)