2017-05-25 85 views
0

我提前道歉,因爲這似乎是一個基本的問題...`twine upload dist/*`命令是做什麼的?

我試圖用mujoco(link here)學習,其蟒蛇內部結合的Makefile有:

upload: 
    rm -rf dist 
    python setup.py sdist 
    twine upload dist/* 

什麼twin upload dist/*命令呢? 此外,這要求我對這樣的用戶名和密碼:

Uploading distributions to https://pypi.python.org/pypi 
Enter your username: guest 
Enter your password: 
Uploading mujoco-py-0.5.7.tar.gz 
HTTPError: 401 Client Error: You must be identified to edit package information for url: https://pypi.python.org/pypi 
Makefile:2: recipe for target 'upload' failed 

這是問我的電腦的用戶名和密碼?

回答

2

Twine是一個將項目構建上傳到PyPI(Python Package Index)的常用系統。

它將負責安全地將項目的構建工件以wheel,sdist等格式轉移到PyPI或其他用戶定義的索引服務器。

當您指定twine upload <files>時,twine會嘗試將所有文​​件上傳到PyPI,但爲了這樣做,它將要求您對自己進行身份驗證。這是因爲PyPI希望保護一個項目免於被他人廣告的軟件包「被劫持」。爲了繼續執行此步驟,您必須爲您上傳的項目工件屬於的項目提供標記爲權威的憑據。

它看起來像mujoco項目的Makefile包括一個目標,通過利用Twine應用程序輕鬆上傳項目的更新到PyPI。這個目標只能用於軟件包維護者。

哦,如果你想知道,python setup.py sdist命令是什麼使得可以上傳到PyPI的源代碼工件。它會將該工件放在./build/目錄中,作爲project-name_version.tar.gz