2017-03-13 3 views
0

私はモジュールを作成していて、私のsetup.pyファイルにいくつかの要件を準備する必要があります。要件の1つは、すでにPyPIに入っている1つのパッケージのフォークです。私はGitHubリポジトリを直接参照したいのです。リポジトリURLから要件をインストールするようにsetup.pyを設定してください

私は最初のものであり、二つの構成を試してみました:

setup(
    'name': 'mymodule', 
    # other arguments 
    install_requires=[ 
     'myrequirement', # The dependency name 
    ], 
    dependency_links=[ 
     'https://github.com/ihhcarus/myrequirement.git#egg=myrequirement', # This is my repository location 
    ] 
) 

私はpython setup.py sdistを使用して、私のモジュールのローカル分布を作成し、私はpip install path/to/module/dist/mymodule-0.1.tar.gzを実行すると、それはは、PyPI上のバージョンではなく、私のリポジトリをインストールしてしまいます。

他の構成は、私はそうのような依存関係のリンクを探して、強制的に要件名を変更しようとしました:

setup(
    'name': 'mymodule', 
    # other arguments 
    install_requires=[ 
     'myrequirement_alt', # The dependency name with a suffix 
    ], 
    dependency_links=[ 
     'https://github.com/ihhcarus/myrequirement.git#egg=myrequirement_alt', # This is my repository location 
    ] 
) 

しかし、これで、私はmyrequirement_altが見つからないというエラーになってしまいます。..

私は、PyPIを使用せずにこれを達成する正しい方法は何ですか?

+0

git downloadが生成するリンクを試してください。私はそれがうまくいくと思います。 –

+0

@IrshadBhatもし私が 'pip install ...'を直接実行すると、私のリポジトリで動作しますが、 'setup.py'依存ファイルでそれを使用することはできません。 – ihhcarus

+0

実行中のpipのバージョンは?新しいバージョンでは、インストール時に--process-dependency-linksフラグを使用する必要があります。 – nir0s

答えて

1

依存関係のリンクを使用するには、パッケージのバージョン番号をhttps://github.com/ihhcarus/myrequirement.git#egg=myrequirement_altに追加する必要があります。 か、何をインストールすればいいのかわかりません。

例えば:私はすべてで、彼らは廃止予定しているとして、使用依存関係のリンクをお勧めしません

setup(
    'name': 'mymodule', 
    # other arguments 
    install_requires=[ 
     'myrequirement', # The dependency name 
    ], 
    dependency_links=[ 
     'https://github.com/ihhcarus/myrequirement.git#egg=myrequirement_alt-1.3' # Link with version at the end 
    ] 
) 

注意。おそらく代わりに要件ファイルを使用するべきです。

+0

モジュールのために 'modules.txt'ファイルをインストールするにはどうしたらいいですか? – ihhcarus

+0

できません。要件ファイルは、pipの '-r'フラグを使って明示的に渡す必要があります。それは答えられるが、別の質問です。あなたの問題を解決した場合は、その答えを承認してください。 – nir0s

+0

他の質問の答えはどこにありますか? – GiantsLoveDeathMetal

関連する問題