Trouble installing private github repository using pip
作为前言,我已经看到了这个问题是否可以使用pip从私有github存储库安装包?
我正在尝试从我可以使用pip访问的私有存储库安装一个包。
我可以像这样直接克隆它:
1 2 3 4 5 6 7 | (myenv)robbie@ubuntu:~/git$ git clone git@github.com: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. |
但是当我尝试通过pip安装它时(我的virtualenv被激活):
1 2 3 4 5 6 7 8 9 | (myenv)robbie@ubuntu:~/git$ pip install git+https://git@github.com/matherbk/django-messages.gitDownloading/unpacking git+https://git@github.com/matherbk/django-messages.git Cloning https://git@github.com/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://git@github.com/matherbk/django-messages.git /tmp/pip-13ushS-build: ---------------------------------------- Command /usr/bin/git clone -q https://git@github.com/matherbk/django-messages.git /tmp/pip-13ushS-build failed with error code 128 in None Storing complete log in /home/robbie/.pip/pip.log |
我尝试输入密码但失败了。 但是我通过[email protected]进行了ssh身份验证:
1 2 | (myenv)robbie@ubuntu:~/git$ ssh -T git@github.com Hi robpodosek! You've successfully authenticated, but GitHub does not provide shell access. |
我可以将
1 2 3 4 5 6 7 8 9 10 11 12 13 | (myenv)robbie@ubuntu:~/git$ pip install git+https://robpodosek@github.com/matherbk/django-messages.git Downloading/unpacking git+https://robpodosek@github.com/matherbk/django-messages.git Cloning https://robpodosek@github.com/matherbk/django-messages.git to /tmp/pip-SqEan9-build Password for 'https://[email protected]': Running setup.py egg_info for package from git+https://robpodosek@github.com/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... |
但是我想通过使用[email protected]来做第一篇文章所做的事情,这样我就不必将我的用户名添加到requirements.txt文件中并将其添加到版本控制中。
有什么想法吗? 我以前有这个工作,但不得不启动一个新的图像。 提前谢谢。
它通过使用oxyum的建议将其更改为:
1 | pip install git+ssh://git@github.com/matherbk/django-messages.git |
确保使用github.com
请参阅Git + SSH依赖关系与git clone有微妙(但关键)的差异
如果您使用
如果virtualenv已激活,则必须从文本文件中安装github.com的一系列应用程序。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | (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 |
但是,正如@Robeezy建议的那样,编辑了requirements.txt并改为
1 | -e git://github.com... |
至
1 | -e git+https://github.com... |
这是您从网站克隆时提供的链接(只有选项是克隆或下载)。
所以谢谢! 它终于奏效了。