2012-05-25 16 views
5

Estoy empaquetando mi primera aplicación Django y quiero dejar mi archivo settings_local.py del huevo. Idealmente, estoy buscando una forma de tener todo en mi archivo .gitignore también excluido del huevo.¿Cómo puedo excluir archivos en mi .gitignore al empaquetar un huevo de Python?

He probado las siguientes variaciones en mi archivo MANIFEST.in (uno por cada huevo intento de creación):

prune project_name settings_local.py 
prune project_name/settings_local.py 
exclude project_name settings_local.py 
exclude project_name/settings_local.py 

También probé añadiendo la siguiente línea a mi archivo startup.py (en la recomendación de un amigo):

exclude_package_data= {'': 'settings_local.py'}, 

Cualquier sugerencia sería muy apreciada.

Respuesta

2

No utilice MANIFEST.in pero use setuptools-git en su lugar; con ese paquete, todos los archivos incluidos en su repositorio de git también serán parte del huevo, y los archivos enumerados en .gitignore no lo serán.

que tienen el paquete instalado a nivel mundial, en site-packages de mi pitón, pero debería ser suficiente para incluirla en su setup.py en el setup_requires estructura:

setup(... 
    setup_requires=['setuptools-git'], 
    ... 
) 
+0

Gracias. Esto es perfecto. Me avergüenza admitir que el problema fue que no anticipé el directorio superior de setup.py cuando inicié el repositorio local, por lo que estaba fuera de él. – Nox

2

Usted puede utilizar git archive para producir un archivo zip con los contenidos del repositorio de git (como lo haría en un nuevo directorio de trabajo). Luego puede usar esos archivos para empacar el huevo como lo necesite.

Ver: git archive

Cuestiones relacionadas