Pip ile belirli git kesinleştirme kurulumu


Yanıtlar:


281

İşleme karmasını, şube adını, etiketi belirtebilirsiniz.

Şube adı ve etiketi için sıkıştırılmış bir dağıtım da yükleyebilirsiniz. Bu, tüm deponun klonlanmasını gerektirmediği için daha hızlı ve daha verimlidir. GitHub bu paketleri otomatik olarak oluşturur.

karma:

$ pip install git+git://github.com/aladagemre/django-notification.git@2927346f4c513a217ac8ad076e494dd1adbf70e1

dal-name

Git ile

$ pip install git+git://github.com/aladagemre/django-notification.git@cool-feature-branch

veya kaynak paketinden

$ pip install https://github.com/aladagemre/django-notification/archive/cool-feature-branch.tar.gz

etiket

git ile

$ pip install git+git://github.com/aladagemre/django-notification.git@v2.1.0

veya kaynak paketinden

$ pip install https://github.com/aladagemre/django-notification/archive/v2.1.0.tar.gz

İyi belgelendirilmemiş bir özelliktir, ancak daha fazla bilgiyi https://pip.pypa.io/en/latest/reference/pip_install.html#git adresinde bulabilirsiniz.


24
Bu eğlenceli mesajı ekleyecek:Could not find a tag or branch '2927346f4c513a217ac8ad076e494dd1adbf70e1', assuming commit.
vlad-ardelean

10
@ vlad-ardelean pip IT bir taahhüt olduğunu nasıl söylenir hakkında herhangi bir fikir? Bu benim dağıtım betiği çıktı ve tüm stderr bastırmak istemiyorum.
Leonardo Arroyo

Hiçbir şey belirtmezseniz, davranış nedir?
Scott Stafford

@ScottStafford Taahhüt mesajı olarak adlandırılan bir şubeniz / etiketiniz olmamalıdır. Bu ... garip olurdu.
Martin Thoma

Ayrıca ben bir HTTPS sürümünü söz ediyorum git+komutu: pip install git+https://github.com/gpoore/codebraid@011464539bfb09b8611c8aef0d543532cea958bf. Kurumsal http proxy'lerinin arkasındaki insanlar için önemli olabilir.
grwlf

19

@ Hugo-tavares'ın cevabına ek bir yorum:

Özel bir GitHub deposu ise şunları kullanmanız gerekir:

pip install git+ssh://git@github.com/....

Senin durumunda:

pip install git+ssh://git@github.com/aladagemre/django-notification.git@2927346f4c513a217ac8ad076e494dd1adbf70e1

12

Sadece aşağıdaki satırı ekleyerek projenizdeki needs.txt dosyasını kullanarak otomatik olarak bir python paketi yüklemek mümkündür:

-e git+https://github.com/owner/repository.git@branch_or_commit

ve komut satırını çalıştırın:

$ pip install -r requirements.txt


15
Benim için (python3.5 virtualenv'de 9.0.1 pip) işe yaramadı: pip install -r requirements.txtyükseltildi 'Gereksinim adı tespit edilemedi, lütfen # egg = ile bir tane belirtin. Ancak '-e git + github.com/owner/repository.git#egg=branch_or_commit ' biçimiyle çalıştı
Edouard Berthe

Bu biçimi gereksinimler.txt dosyasında kullanmanız gerekir. Onu yaptınmı?
mannysz

Çalıştım ama bu belli değil. Satırın başında yalnızca "-e ..." değil, "package_name -e ..." olmalıdır.
Udi

1

Bir yumurta paketi oluşturmak istiyorsanız, yine aynı @branch_or_commit uzantısını kullanabilirsiniz: pip install git+ssh://git@github.com/myrepo.git@mybranch#egg=myeggscript

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.