2013-09-27 55 views
45

Tôi có thể cài đặt/nâng cấp các gói từ GitHub bằng cách sử dụng conda không?Điều khoản: Cài đặt/nâng cấp trực tiếp từ github

Ví dụ, với pip tôi có thể làm:

pip install git+git://github.com/scrappy/[email protected] 

để cài đặt scrappy trực tiếp từ master chi nhánh tại GitHub. Tôi có thể làm điều gì đó tương đương với conda?

Nếu điều này là không thể, nó sẽ làm cho bất kỳ ý nghĩa để cài đặt pip với conda và quản lý các cài đặt cục bộ như vậy với pip?

Trả lời

35

Có hỗ trợ tốt hơn cho việc này ngay bây giờ thông qua conda-env. Bạn có thể, ví dụ, bây giờ làm:

name: sample_env 
channels: 
dependencies: 
    - requests 
    - bokeh>=0.10.0 
    - pip: 
    - "--editable=git+https://github.com/pythonforfacebook/[email protected]#egg=facebook_sdk-master" 

Nó vẫn gọi pip dưới lớp chăn, nhưng bây giờ bạn có thể thống nhất conda và gói pip của bạn chi tiết kỹ thuật trong một environment.yml tập tin duy nhất.

Nếu bạn muốn cập nhật môi trường gốc của mình bằng tệp này, bạn cần phải lưu tệp này vào tệp (ví dụ: environment.yml), sau đó chạy lệnh: conda env update -f environment.yml.

Đó là nhiều khả năng mà bạn mong muốn tạo ra một môi trường mới:

conda create -f environment.yml

+0

Làm thế nào để bạn cài đặt các yêu cầu từ môi trường mà ở môi trường gốc của bạn? – hobs

+0

@hobs - Tôi đã chỉnh sửa câu trả lời để trả lời câu hỏi của bạn. –

+0

cảm ơn. Điều đó làm việc cho tôi trên Linux. – hobs

24

conda không hỗ trợ điều này trực tiếp vì cài đặt từ tệp nhị phân, trong khi cài đặt git sẽ từ nguồn. conda build không hỗ trợ công thức nấu ăn được xây dựng từ git. Mặt khác, nếu tất cả những gì bạn muốn làm là cập nhật thông tin mới nhất và lớn nhất của gói, sử dụng pip bên trong Anaconda là tốt, hoặc luân phiên, sử dụng setup.py develop đối với bản sao git.

Các vấn đề liên quan