当在python包中包含外部文件时,我在MANIFEST.in中将其定义为

清单

include aikif/web_app/static/*


并生成软件包将生成清单文件,如下所示

#file GENERATED by distutils, do NOT edit
README.txt
setup.py
aikif\__init__.py
aikif\bias.py
aikif\cls_file_mapping.py
...


目前,我将MANIFEST和MANIFEST.in都包含在github存储库中,但还没有看到其他存储库同时包含这两个。

我应该忽略清单吗,还是有更好的方法来构建该软件包,因此不需要它?

最佳答案

简短的答案-是的,将清单文件包含在.gitignore中

Python软件包页面没有提及忽略MANIFEST(http://www.scotttorborg.com/python-packaging/everything.html

# Compiled python modules.
*.pyc

# Setuptools distribution folder.
/dist/

# Python egg metadata, regenerated from source files by setuptools.
/*.egg-info
/*.egg


在github(pypa / pip)https://github.com/pypa/pip/blob/develop/.gitignore上找到了一个很好的例子,它确实在.gitignore中包含了MANIFEST

build/
dist/
docs/_build/
pip.egg-info/
MANIFEST
.tox
*.egg
*.py[cod]
*~
.coverage
coverage.xml


github上的许多其他软件包都没有忽略该文件,但是它也不在存储库中,因此我假设人们在从本地存储库执行git status时只是列出了该文件。

关于python - Python软件包同时包含MANIFEST和MANIFEST.in-我可以忽略MANIFEST吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29836718/

10-12 03:22