Conda:githubから直接インストール/アップグレード


112

condaを使用してGitHubからパッケージをインストール/アップグレードできますか?

たとえば、pip私は次のことができます:

pip install git+git://github.com/scrappy/scrappy@master

GitHub scrappymasterブランチから直接インストールします。condaで同等のものを実行できますか?

これが不可能な場合、condaを使用してpipをインストールし、pipを使用してそのようなローカルインストールを管理することは理にかなっていますか?

回答:


74

これにより、のサポートが改善されましたconda-env。たとえば、次のことができます。

name: sample_env
channels:
dependencies:
   - requests
   - bokeh>=0.10.0
   - pip:
     - "--editable=git+https://github.com/pythonforfacebook/facebook-sdk.git@8c0d34291aaafec00e02eaa71cc2a242790a0fcc#egg=facebook_sdk-master"

それはまだ内部でpipを呼び出していますが、condaとpipパッケージの仕様を単一のenvironment.ymlファイルに統合できるようになりました。

このファイルでルート環境を更新する場合は、これをファイル(たとえば、environment.yml)に保存してから、コマンドを実行する必要がありますconda env update -f environment.yml

新しい環境を作成する可能性が高くなります。

conda env create -f environment.yml (コメントで想定どおりに変更)


その環境の要件をルート環境にどのようにインストールしますか?
2016

@hobs-私はあなたの質問に答えるために答えを編集しました。
Aron Ahmadia 2016年

1
それは実際だconda env create -f environment.ymlと、フラグの略。conda create-f--force
Perfi

1
どこかに文書化されていますか?
guilhermecgs 2018年

1
@Perfi、私のミスは私はあなたがいることを示唆していると思っていた-fconda env create力と呼ばれ、ではないためconda create、慎重に読んでいないため、私のミスを。
ウィル

103

答えは古くなっています。あなたは単にcondaをpipとgitにインストールする必要があります。その後、pipを通常どおり使用できます。

  1. conda環境をアクティブ化 source activate myenv

  2. conda install git pip

  3. pip install git+git://github.com/scrappy/scrappy@master


4
これに加えて、私の場合のように環境内にあるピップを使用する必要があります。私の場合、使用したピップは「/ home / ubuntu / anaconda3 / envs / tensorflow_p36 / bin / pip」でした。このピップは、condaのインストールを実行した後に発生します。このbinディレクトリを$ PATHの前に追加できます。
ファイザン、

1
インストールされたパッケージはmasterその後のブランチにのみありますか?マスターにマージする前にブランチからPRをテストしたい場合はどうなりますか?
Mymozaaa

1
@AntonAndreev 仕様の両方をサポートgit+gitしてgit+https、プラス他。ただし、すべての仕様の例は.git、ブランチを指定するたびに表示されます。
merv

4
多くはすでにOPにあります(を使用pip install)。問題は、conda 直接回答する方法を尋ねることです。
Amelio Vazquez-Reina

29

condaバイナリからインストールされるため、これは直接サポートされませんが、git installはソースから行われます。conda buildgitから構築されたレシピをサポートします。一方、あなたがしたいのがパッケージの最新かつ最高の状態で最新の状態を保つことである場合、Anaconda内でpipを使用するだけで十分です。あるいはsetup.py develop、gitクローンに対して使用します。


パッケージにリリースバイナリが関連付けられている場合はどうなりますか?
Marcel Ramos

4

condasの問題でこれへの言及を見つけました。以下が動作するはずです。

name: sample_env
channels:
dependencies:
   - requests
   - bokeh>=0.10.0
   - pip:
     - git+https://github.com/pythonforfacebook/facebook-sdk.git

これにより、@ AronAhmadiaの回答にまだないものは何も追加されません。これは、通常のrequirements.txtのオプションの多くが利用できることをより一般的に示しています。
merv
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.