Pour commencer, j'ai déjà vu cette question Est-il possible d'utiliser pip pour installer un paquet depuis un dépôt privé github?
J'essaie d'installer un paquet à partir d'un référentiel privé auquel j'ai accès à l'aide de pip.
Je suis capable de le cloner directement comme ceci:
(myenv)robbie@ubuntu:~/git$ git clone [email protected]:matherbk/Django-messages.git
Cloning into 'Django-messages'...
remote: Counting objects: 913, done.
remote: Compressing objects: 100% (345/345), done.
remote: Total 913 (delta 504), reused 913 (delta 504)
Receiving objects: 100% (913/913), 165.73 KiB, done.
Resolving deltas: 100% (504/504), done.
Mais quand j'essaye de l'installer via pip (mon virtualenv est activé):
(myenv)robbie@ubuntu:~/git$ pip install git+https://[email protected]/matherbk/Django-messages.gitDownloading/unpacking git+https://[email protected]/matherbk/Django-messages.git
Cloning https://[email protected]/matherbk/Django-messages.git to /tmp/pip-13ushS-build
Password for 'https://[email protected]':
fatal: Authentication failed
Complete output from command /usr/bin/git clone -q https://[email protected]/matherbk/Django-messages.git /tmp/pip-13ushS-build:
----------------------------------------
Command /usr/bin/git clone -q https://[email protected]/matherbk/Django-messages.git /tmp/pip-13ushS-build failed with error code 128 in None
Storing complete log in /home/robbie/.pip/pip.log
J'ai essayé de taper mon mot de passe mais cela a échoué. Cependant, je suis ssh authentifié pour [email protected]:
(myenv)robbie@ubuntu:~/git$ ssh -T [email protected]
Hi robpodosek! You've successfully authenticated, but GitHub does not provide Shell access.
Je peux passer de [email protected]
à [email protected]
et cela me permet d’installer parfaitement via pip:
(myenv)robbie@ubuntu:~/git$ pip install git+https://[email protected]/matherbk/Django-messages.git
Downloading/unpacking git+https://[email protected]/matherbk/Django-messages.git
Cloning https://[email protected]/matherbk/Django-messages.git to /tmp/pip-SqEan9-build
Password for 'https://[email protected]':
Running setup.py Egg_info for package from git+https://[email protected]/matherbk/Django-messages.git
warning: no files found matching 'README'
Installing collected packages: Django-messages
Running setup.py install for Django-messages
warning: no files found matching 'README'
Successfully installed Django-messages
Cleaning up...
Cependant, je veux faire ce que le premier article mentionné fait en utilisant [email protected] pour ne pas avoir à ajouter mon nom d'utilisateur dans un fichier bonds.txt et à l'ajouter au contrôle de version.
Des pensées? Auparavant, cela fonctionnait mais je devais démarrer une nouvelle image. Merci d'avance.
Cela a fonctionné en utilisant la suggestion de oxyum de le changer en:
pip install git+ssh://[email protected]/matherbk/Django-messages.git
Assurez-vous d’utiliser github.com/account
au lieu de github.com:account
Voir Les dépendances Git + SSH présentent des différences subtiles (mais critiques) par rapport au clone git
Virtualenv est-il activé et doit-il installer une série d’applications de github.com à partir d’un fichier texte?.
(venv)$ cat requirements.txt
-e git://github.com/boto/botocore.git@develop#Egg=botocore
-e git://github.com/boto/jmespath.git@develop#Egg=jmespath
-e git://github.com/boto/s3transfer.git@develop#Egg=s3transfer
nose==1.3.3
mock==1.3.0
wheel==0.24.0
unittest2==0.5.1; python_version == '2.6'
(venv)$ pip install -r requirements.txt
Ignoring unittest2: markers 'python_version == "2.6"' don't match your environment Obtaining botocore from git+git://github.com/boto/botocore.git@develop#Egg=botocore (from -r requirements.txt (line 1))
Cloning git://github.com/boto/botocore.git (to develop) to ./venv/src/botocore
fatal: unable to connect to github.com:
github.com[0: 192.30.253.112]: errno=Connection timed out
github.com[1: 192.30.253.113]: errno=Connection timed out
Command "git clone -q git://github.com/boto/botocore.git
/home/ubuntu/utils/boto3/venv/src/botocore" failed with error code 128 in None
Cependant, comme @Robeezy l’a suggéré, a modifié le besoin.txt et a changé de
-e git://github.com...
à
-e git+https://github.com...
C'est le lien fourni si vous deviez cloner depuis le site (seules les options étaient Cloner ou Télécharger).
Alors merci! Cela a finalement fonctionné.
Si vous installez avec pip install git+https://github.com/repo
et obtenez cette erreur, assurez-vous que votre nom d'utilisateur et votre mot de passe sont corrects. J'obtenais cette erreur parce que j'avais mal saisi mon mot de passe.