推送时不允许Git-Receive-Pack

tcomlyy6  于 2022-09-21  发布在  Git
关注(0)|答案(24)|浏览(612)

我在Eclipse中使用了EGit,并试图推送到Github。我在当地做出了承诺,然后试图将其推向上游。我收到了这样的错误:

Can't connect to any URI: https://github.com/Buroa/Konklex.git (An internal Exception occurred during push: https://github.com/Buroa/Konklex.git: git-receive-pack not permitted)

我似乎找不到绕过它的方法。我是不是漏掉了什么?

qgzx9mmu

qgzx9mmu1#

在我的情况下,是因为权限。我们做了一些从GitLab到GitHub的迁移。我的同事从我正在做的旧项目中创建了一个私人项目。当我完成后,我发现我不能推了,于是出现了这个错误。最后,我们发现这是因为我没有被添加到这个项目的合作者中。我认为这应该是自动完成的,因为我已经是这个项目的贡献者之一。希望对有类似问题的人有所帮助。

qjp7pelc

qjp7pelc2#

要了解GitHub的最新变化,请尝试此链接。现在,您需要传递令牌作为密码,而不是实际的密码。

参考-https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token

but5z9lq

but5z9lq3#

简单的答案是-您没有对您试图推送的回购的写入权限。

lawou6xi

lawou6xi4#

非常基本,但它发生在我身上:我没有验证我的电子邮件。检查您的电子邮件,按下“验证电子邮件”按钮,然后再次尝试按下。

kcwpcxri

kcwpcxri5#

试试这个

此错误是由于升级造成的。所以你需要去
设置>开发人员设置>个人访问令牌>生成令牌

1.选择第一个选项,然后单击生成
1.使用该生成的令牌作为git的密码

https://www.youtube.com/watch?v=rLEYw1caoBQ

tct7dpnv

tct7dpnv6#

这一点偶然发现了很久,终于找到了答案。在Password部分,我们不应该输入GitHub登录密码,而必须输入个人访问令牌。下面的链接显示了如何创建个人访问令牌:https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token

lnvxswe2

lnvxswe27#

进入BitBucket-个人设置-访问管理-应用程序密码-点击‘创建应用程序密码’按钮

在‘Label’字段中提供任何名称

选中权限部分中的所有复选框

点击‘创建’按钮

将生成密码。复制此密码并将其保存到任何本地文本文件。

转到凭据管理器-Windows凭据管理器

删除保存的BitBucket登录。

现在转到Eclipse并尝试再次提交和推送

当提示输入密码时,提供复制的生成的应用程序密码。

现在,提交和推送应该会成功,而不会出现Git-Receipt.-Pack Not Allowed错误。

enter image description here

b1payxdu

b1payxdu8#

另一个问题可能是,在为Github创建个人访问令牌时,您没有选中所有必要的复选框。

在我的例子中,这是我的错误,通过在创建个人访问令牌时选中所有权限/复选框来创建新令牌,它工作得很好。

juzqafwq

juzqafwq9#

当然,您的Git用户ID和密码在配置上不匹配。请重新检查并确保您的凭据是正确的。

3zwtqj6y

3zwtqj6y10#

由于我的组织要求我们使用SSH密钥而不是用户名+密码,因此使其适用于我的方法是:

1.在Eclipse-->Team-->Remote-->Configure Push to Upstream中右键单击您的项目
1.在URI旁边单击“Change”
1.选择协议ssh
1.在身份验证-->用户中插入git(如果你在这里使用默认用户名,eclipse/git似乎会自动搜索你的id_rsa密钥文件-我试着添加我的真实用户名,但从未奏效)
1.完成保存并推送

sxissh06

sxissh0611#

我在推送到GitLab存储库时遇到了这个错误,我使用的username没有推送到分支的存储库的权限。

将权限级别从reporter更改为master解决了问题。

emeijp43

emeijp4312#

如果您在使用Git时遇到Git-Receive-Pack Not Allowed错误,很可能是您端的配置问题。在我的例子中,我使用Via HTTPS克隆了存储库(这需要身份验证)。但是,推送失败,出现前述错误。这是因为我只被允许通过SSH推送。因此,一旦我更改了结账配置中的协议,一切都会恢复正常。

因为我使用的是Eclipse(和eGit),所以知道Git克隆的项目的配置设置可以通过项目的上下文菜单(右键单击)访问,然后选择Team、Remote和“配置从上游获取”或“配置推送到上游”(如果适用),这可能会很方便。

希望这个能帮上忙!

slwdgvem

slwdgvem13#

我知道这是一个老帖子,但我今天花了一个多小时的时间才发现发生了这种情况,因为在我的egit推送对话框窗口中,我使用了不同的用户ID

一旦我输入了正确的GitHub用户,推送到远程存储库的过程就很顺利。

nlejzf6q

nlejzf6q14#

对于想知道如何为BitBucket repo+eclipse IDE修复此问题的人

转到Preferences->Git,然后将Http Client更改为Java built-in HTTP

这为我解决了这个问题。

wnrlj8wa

wnrlj8wa15#

出于某些原因,egit似乎不能与Wincred凭据存储一起使用。你得用Eclipse的那个。

1.打开Git仓库透视图。
1.打开Remotes节点,右击源(或您选择的Remote)。
1.点击[配置推流],然后点击[更改...]按钮
1.填写[鉴权]部分
1.进行演练以进行测试

这应该会奏效。

相关问题