Einschließlich .gitignore im Setup? – Fehler: existiert nicht oder nicht eine reguläre Datei

Setup.py

from setuptools import setup, find_packages from os import path from functools import partial if __name__ == '__main__': package_name = 'gen' templates_join = partial(path.join, path.dirname(__file__), package_name, 'templates') setup( name=package_name, test_suite=package_name + '.tests', packages=find_packages(), package_dir={package_name: package_name}, package_data={package_name: [templates_join('.gitignore')]} ) 

Baum

 . ├── gen │  ├── __init__.py │  ├── templates │  │  ├── __init__.py │ │ ├── .gitignore └── setup.py 

Fehler

Fehler: kann nicht kopieren 'gen / ld / gen / templates / .gitignore': existiert nicht oder nicht eine reguläre Datei

  • Führen Sie eine benutzerdefinierte Aufgabe aus, wenn der Anruf `Pip installieren '
  • Distutils setup.py und% post% postun
  • Richtigen Weg, um Skripts Verzeichnis von setup.py in Python distutils zu finden?
  • Python kann distutils_path nicht auf Mac OSX finden
  • Wie kann ich Python-Pakete von Drittanbietern in Sublime Text 2-Plugins enthalten
  • Führen Sie eine Python-Skript-Post-Installation mit distutils / setuptools aus
  • 2 Solutions collect form web for “Einschließlich .gitignore im Setup? – Fehler: existiert nicht oder nicht eine reguläre Datei”

    Versuchen Sie, abspath(split(__file__)[0]) stattdessen zu verwenden.

     from setuptools import setup, find_packages from functools import partial from os.path import join, abspath, split if __name__ == '__main__': package_name = 'gen' templates_join = partial(join, abspath(split(__file__)[0]), 'gen', 'templates') setup( name=package_name, test_suite=package_name + '.tests', packages=find_packages(), package_dir={package_name: package_name}, package_data={package_name: [templates_join('.gitignore')]} ) 

    Lassen Sie mich wissen, ob es Arbeit ist.

    Bestätigt, dass die Verwendung von data_files innerhalb / außerhalb eines virtualenv unter Linux und Windows virtualenv :

     from setuptools import setup, find_packages from os import path from functools import partial from pip import __file__ as pip_loc if __name__ == '__main__': package_name = 'gen' templates_join = partial(path.join, path.dirname(__file__), package_name, 'templates') install_to = path.join(path.split(path.split(pip_loc)[0])[0], package_name, 'templates') setup( name=package_name, version='0.0.1', test_suite=package_name + '.tests', packages=find_packages(), package_dir={package_name: package_name}, data_files=[(install_to, [templates_join('.gitignore'), templates_join('logging.conf')])] ) 
    Python ist die beste Programmiersprache der Welt.