Python:如何在使用setup.py安装(distutil)时强制覆盖文件
我正在使用Python:如何在使用setup.py安装(distutil)时强制覆盖文件,python,installation,distutils,overwrite,Python,Installation,Distutils,Overwrite,我正在使用distutil安装python代码 python setup.py安装 当我想在新的分支上安装旧的代码分支时,我遇到了问题: setup.py安装不会覆盖旧文件。一种解决方法是触摸(touch)所有文件,因此这些文件必须比已安装的文件更新,但这非常难看 我要找的是一个选项,强制覆盖所有的文件,例如 python setup.py--强制安装 有什么想法吗?Python开发人员也有同样的想法,他们只是把选项放在命令后面: python setup.py install --force
distutil
安装python代码
python setup.py安装
当我想在新的分支上安装旧的代码分支时,我遇到了问题:
setup.py安装
不会覆盖旧文件。一种解决方法是触摸(touch
)所有文件,因此这些文件必须比已安装的文件更新,但这非常难看
我要找的是一个选项,强制覆盖所有的文件,例如
python setup.py--强制安装
有什么想法吗?Python开发人员也有同样的想法,他们只是把选项放在命令后面:
python setup.py install --force
distutils文档没有特别提到--force
选项,但是您可以通过使用--help
选项找到它:
python setup.py --help install
转到
setup.py
目录,我只需使用:
pip install .
它适合我。注意,--force会覆盖文件,而不会删除文件。我发现我需要切换版本时依赖于pip卸载。否则,你不知道潜伏着什么。如果pip不是一个选项,那么我认为您必须手动删除/bin/和/lib/python/site-packages/。再说一次,皮普是你的朋友。它对我也有用。它正确地覆盖了我的文件,甚至
install--force
出于某种原因没有这样做。setup.py似乎已正确执行,我的所有文件都已复制到它们应该去的地方。“因此,基本上,使用pip。它只提供改进”