无法使用pip在github上安装特定的git分支 - 权限被拒绝(publickey)

Zas*_*has 9 git pip github

我正在尝试使用pip在Github上安装一个forked repo(https://github.com/theatlantic/django-ckeditor/),但没有成功.

我用的时候

pip install -e git+git://github.com/theatlantic/django-ckeditor.git#egg=django-ckeditor
Run Code Online (Sandbox Code Playgroud)

它确实安装了repo的内容,但是它的旧版本没有我感兴趣的新更改.所以我试图强制pip来获得最新的分支,这显然是atl/4.3.x但我觉得这很奇怪错误,如果分支的名称不正确或类似的东西:

$ pip install -e git+git://github.com/theatlantic/django-ckeditor.git@"atl/4.3.x"#egg=django-ckeditor
Obtaining django-ckeditor from git+git://github.com/theatlantic/django-ckeditor.git@atl/4.3.x#egg=django-ckeditor
  Updating /home/mathx/.virtualenvs/goblets/src/django-ckeditor clone (to atl/4.3.x)
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Clone of 'git@github.com:theatlantic/ckeditor-dev.git' into submodule path 'ckeditor/static/ckeditor/ckeditor-dev' failed
Run Code Online (Sandbox Code Playgroud)

我在某个地方犯了错误吗?

谢谢.

Aar*_*uyn 5

您发布的错误消息:

Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Run Code Online (Sandbox Code Playgroud)

...表示您无权访问该存储库。

您可能会幸运地使用 GitHub 的 HTTP URL:

pip install -e git+http://github.com/theatlantic/django-ckeditor.git#egg=django-ckeditor
Run Code Online (Sandbox Code Playgroud)


VxJ*_*nxV 2

IRC 中的一位用户询问了类似的情况,我认为我们找到的答案也适用于这里。(链接到这个问题的用户说“同样的事情正在发生”,这就是我遇到的原因。)

考虑OP的输出:

从 git+git://github.com/theatlantic/django-ckeditor.git@atl/4.3.x#egg=django-ckeditor 获取 django-ckeditor

OP 尝试通过匿名 git (git://URL)pip install django-ckeditor。

错误是:

将“git@github.com:theatlantic/ckeditor-dev.git”克隆到子模块路径“ckeditor/static/ckeditor/ckeditor-dev”失败

如果您查看https://github.com/theatlantic/django-ckeditor/blob/atl/4.3.x/.gitmodules,django-ckeditor 会拉入 ckeditor-dev,并使用 SSH URL 来执行此操作。

GitHub 不允许通过 SSH 进行匿名克隆。通过 SSH 使用 git 必须使用注册的 SSH 密钥。用户必须注册 GitHub、注册其公钥并适当配置私钥以便在安装时使用。

存储库所有者 ( theatlantic) 应该将其子模块 URL 更改为https://URL 或匿名git://