2013-07-13 54 views
1

要上傳到PyPI,請運行python setup.py register sdist upload。但是這需要重新生成源代碼分發。作爲我發佈過程的一部分,我希望能夠獨立於上傳生成源代碼發佈。有沒有辦法從文件上傳,即如python setup.py upload dists/mypackage.tar.gzsetup.py從文件上傳

回答

1

由埃裏克·阿勞霍提到的問題中提到這一招:

「特技可用於避免第二sdist重做所有的工作:拳頭你運行「Python安裝。 py sdist --keep-temp「,然後你檢查sdist,並上傳你調用」python setup.py sdist --dry-run upload「。我不贊成把這個技巧添加到文檔中,至於正常使用,兩次運行sdist都可以。「

1

上傳將只推送從同一命令行運行的命令產品的文件,例如, 「sdist上傳」。如果你運行「sdist」,檢查結果,然後執行「sdist upload」,第二個sdist應該完全一樣,除非你的setup.py有問題,你修改了你的文件或者你有電腦問題。 (我同意這是很多除非)。因此,對於distutils來說,必須運行「sdist upload」並不是低效率的,並且讓你明確要推送的文件,這是IMO的優點。

(從http://bugs.python.org/issue12944#msg144382

+0

根據我的經驗,它不完全相同(即它有不同的md5散列)。 – asmeurer

+0

+1爲該問題的鏈接。 – asmeurer

+0

你知道爲什麼校驗和不同嗎?這僅僅是文件的不同創建時間,還是內容的不同? –