1. ホーム
  2. python

[解決済み] Git リポジトリを依存関係に含む setup.py の書き方

2022-06-10 07:51:35

質問

私は、以下のように書こうとしています。 setup.py を書こうとしています。私のパッケージは、他の Git リポジトリへの依存を指定する必要があります。

今のところ、こんな感じです。

from setuptools import setup, find_packages

setup(
    name='abc',
    packages=find_packages(),
    url='https://github.abc.com/abc/myabc',
    description='This is a description for abc',
    long_description=open('README.md').read(),
    install_requires=[
        "requests==2.7.0",
        "SomePrivateLib>=0.1.0",
        ],
    dependency_links = [
     "git+git://github.abc.com/abc/SomePrivateLib.git#egg=SomePrivateLib",
    ],
    include_package_data=True,
)

実行すると

pip install -e https://github.abc.com/abc/myabc.git#egg=analyse

私は

要件を満たすバージョンが見つかりませんでした。 SomePrivateLib>=0.1.0 (from analyse) (from versions: ) 一致するものがありません。 SomePrivateLib>=0.1.0 (analyseより)に一致するディストリビューションは見つかりませんでした。

私は何を間違えているのでしょうか?

どのように解決すればよいのでしょうか?

注意してください。 この回答はもう古くなっています。最新の説明は @Dick Fox の以下の回答を見てください。 https://stackoverflow.com/a/54794506/2272172


正しい方法を見つけることができます こちら .

dependency_links=['http://github.com/user/repo/tarball/master#egg=package-1.0']

重要なのは、Git リポジトリへのリンクではなく、tarball へのリンクを与えることです。GitHub は master ブランチの tarball を作成します。 /tarball/master を追加すると、GitHub が master ブランチの tarball を作成してくれます。