The Python Oracle

Conda: Installing / upgrading directly from github

Become part of the top 3% of the developers by applying to Toptal https://topt.al/25cXVn

--

Music by Eric Matyas
https://www.soundimage.org
Track title: Beneath the City Looping

--

Chapters
00:00 Question
00:39 Accepted answer (Score 120)
01:34 Answer 2 (Score 155)
02:05 Answer 3 (Score 31)
02:38 Answer 4 (Score 26)
02:56 Thank you

--

Full question
https://stackoverflow.com/questions/1904...

Question links:
[conda]: http://www.continuum.io/blog/conda

Answer 3 links:
[condas issues]: https://github.com/matterport/Mask_RCNN/...

--

Content licensed under CC BY-SA
https://meta.stackexchange.com/help/lice...

--

Tags
#python #github #pip #packagemanagers #conda

#avk47



ANSWER 1

Score 167


The answers are outdated. You simply have to conda install pip and git. Then you can use pip normally:

  1. Activate your conda environment source activate myenv

  2. conda install git pip

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




ACCEPTED ANSWER

Score 138


There's better support for this now through conda-env. You can, for example, now do:

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"

It's still calling pip under the covers, but you can now unify your conda and pip package specifications in a single environment.yml file.

If you wanted to update your root environment with this file, you would need to save this to a file (for example, environment.yml), then run the command: conda env update -f environment.yml.

It's more likely that you would want to create a new environment:

conda env create -f environment.yml (changed as supposed in the comments)




ANSWER 3

Score 31


conda doesn't support this directly because it installs from binaries, whereas git install would be from source. conda build does support recipes that are built from git. On the other hand, if all you want to do is keep up-to-date with the latest and greatest of a package, using pip inside of Anaconda is just fine, or alternately, use setup.py develop against a git clone.




ANSWER 4

Score 30


I found a reference to this in condas issues. The following should now work.

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