【问题标题】:Git can't push from PowerShellGit 无法从 PowerShell 推送
【发布时间】:2018-02-12 14:48:26
【问题描述】:

我最近使用 Windows 安装程序更新到 git v 2.14。之后,我像往常一样继续使用我组织的私人存储库adding 文件,committing 等。一天结束时,当我去@ 987654323@(来自 PowerShell),我收到以下错误:

> git push
remote: Repository not found.
fatal: repository 'https://github.com/<User>/<Repo>.git/' not found

导航到提到的 URL 会显示我的存储库,其中包含以前存在的所有提交。自更新以来我所做的那些尚未提交。

然后我去检查 Windows 命令提示符,收到相同的错误消息。同样的事情也发生在 Git Bash 上。

作用于本地存储库的命令(git commitgit addgit reset 等)运行良好。 需要与远程通信的其他命令产生相同的结果。像git fetchgit clone 这样的东西会显示错误:

> git clone 'https://github.com/<User>/<Repo>.git'
Cloning into '<Repo>'...
remote: Repository not found.
fatal: repository 'https://github.com/<User>/<Repo>.git/' not found

我很确定我的帐户与组织的私有存储库的通信方式存在问题,但我找不到解决方法。

以前有人遇到过这个问题吗?有什么想法吗?

【问题讨论】:

  • 可能是代理问题?
  • 首先查看ping的结果>ping www.github.com
  • @AnsgarWiechers 未使用代理。
  • @Ali.Asadi 地址ping 正确。

标签: git powershell cmd


【解决方案1】:

过了一会儿或尝试了不同的东西,我从 Git GUI 打开了存储库。当我尝试推送时,它要求我的电子邮件和密码(PowerShell 总是会要求的)。添加所有信息,它推送很好。

我从 PowerShell 再次尝试,但没有收到输入凭据的提示。检查git config --global -list(由@AdilHindistan 建议)列出credential.helper=wincred。显然,在更新期间,我勾选了启用 Windows 的 Git 凭据管理器的选项。它可能已经从以前的仓库中保存了我的密码或使用了拼写错误,因此凭据是错误的。

1 因为 credential.helper 键是一个多值配置 清单,一旦设置了帮助器,就无法“取消设置”它。 因此,如果您的系统 /etc/gitconfig 设置为 1,则您永远无法 避免运行它,但只在顶部添加您自己的助手。

以下行对我有用:

git config --global credential.helper 0

【讨论】:

  • 我使用的是wincred,如果我在重置密码时不更新它就会出现问题。所以你提到的命令很有用(+1)。提示您输入密码可能会有所帮助,这意味着连接不是问题。如果提供不正确的密码确实会生成“找不到远程仓库”,我认为这是 git 的错误/误导性错误消息。
  • 是的,一开始我没有注意到。当 Git GUI 要求输入密码时,我意识到它并没有要求输入密码。但是谢谢你的帮助=]
【解决方案2】:

如果所有问题都指向命令行的连接问题,那么您可能应该检查您的 git config 以查看代理是否设置正确。以下是给您的一些建议。

显示你的 git 设置 PS>git config --global --list

设置到代理服务器的 HTTP 连接 将以下设置添加到 .gitconfig 文件的 http 项中。

[http] 代理=: 您也可以使用以下配置命令对其进行配置:

PS> git config --global http.proxy <address of the proxy server>:<port of the proxy server>

与经过用户验证的代理服务器建立 HTTP 连接 将以下设置添加到 .gitconfig 文件的 http 项:

[http]

proxy = http://<username>:<password>@<address of the proxy server>:<port of the proxy server>

你也可以使用下面的配置命令来配置它

PS> git config --global http.proxy http://<username>:<password>@<address of the proxy server>:<port of the proxy server>

【讨论】:

  • 没有使用代理,但由于您的--list 命令,我发现了问题。我正在发布答案。
猜你喜欢
  • 2015-09-05
  • 1970-01-01
  • 2021-12-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-02
  • 2012-02-25
相关资源
最近更新 更多