2013-07-19 36 views
4

我有一個Git倉庫克隆到myproject__init__.py在倉庫的根目錄,使整個事情成爲一個可導入的Python包。將package_dir設置爲..?

我正在嘗試爲套件編寫setuptools setup.py,該套件也位於存儲庫的根目錄下,位於__init__.py文件旁邊。我想setup.py作爲一個包安裝它所在的目錄。如果setup.py本身作爲安裝的一部分出現,那很好,但如果沒有,它會更好。

是否支持此配置?我可以通過將package_dir= {"": ".."},的參數設置爲setup()來讓它工作,告訴它在當前目錄上的目錄中查找myproject。但是,這需要始終從名爲myproject的目錄安裝軟件包,如果通過pip安裝,或者某人正在使用名爲myproject-dev的Git克隆,或者在任何情況下其他案件數量。

我正在考慮的另一個黑客是符號鏈接.名爲mypackage裏面的存儲庫。這應該可行,但我想先檢查是否有更好的方法。

回答

0

使用符號鏈接將無法正常工作(您應該獲得遞歸嵌套的目錄),請參閱my answer to this other post以獲得一個醜陋的黑客攻擊,但其優點是與pip一起工作。