在setuptools中修剪和递归排除之间的区别?

时间:2017-03-23 11:44:54

标签: python-2.7 manifest setuptools setup.py egg

我正在使用setuptools打包一个自定义模块进行部署,该模块不应包含data/目录中用于开发的某些文件。我已使用recursive-exclude data/ *文件中的MANIFEST.in成功排除了必要的文件,但我也看到我可以通过prune data/

执行此操作

这两种方法都是在通过package.egg-info/SOURCES.txt

打包后从python setup.py egg_info删除目标文件

两者之间有什么区别吗?

1 个答案:

答案 0 :(得分:6)

基于documentation行为是:

  • recursive-exclude dir pat1 pat2获取目录dir并忽略与模式pat1pat2匹配的所有文件

  • prune dir将排除目录dir

  • 中的所有文件

因此,在您的情况下,recursive-exclude dir *prune dir应该具有相同的行为,但prune将删除整个目录,而recursive-exclude将保留一个空文件夹。< / p>