Git推送结果“身份validation失败”

我一直在使用Github一段时间,我一直在使用git addgit commitgit push至今没有任何问题。 突然间我有一个错误,说:

致命:身份validation失败

在terminal中,我克隆了一个仓库,在一个文件上工作,然后用git add将文件git add到提交日志中,当我做了git commit ,它工作的很好。 最后, git push请求用户名和密码。 我把这些放在正确的位置,每次我这样做,它都会有同样的错误。

有没有人有任何想法是什么原因导致这个问题,我怎么能解决它?

.git/config的内容是:

 [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = http://www.github.com/######/Random-Python-Tests fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master [user] name = ##### email = ############ 

如果您在Github帐户中启用了双重身份validation,则无法使用帐户密码通过HTTPS进行推送。 相反,您需要生成一个个人访问令牌。 这可以在您的Github帐户的应用程序设置中完成。 使用此令牌作为您的密码应允许您通过HTTPS推送到您的远程存储库。 照常使用您的用户名。

https://help.github.com/articles/https-cloning-errors#provide-access-token-if-2fa-enabled

如果设置为https,您可能还需要更新存储库的来源:

 git remote -v git remote remove origin git remote add origin git@github.com:user/repo.git 

首先,您可以确保使用正确的url:

 git remote set-url origin https://github.com/zkirkland/Random-Python-Tests.git 

那么,如果它以前工作,并且如果它不要求您的用户名,它必须是因为您已经将您的凭据(login名/密码)存储在$HOME/.netrc文件中,如此处所述 。 您可以仔细检查这些设置,并确保您的代理(如果有的话)没有更改。

如果这仍然不起作用,你可以切换到一个ssh url:

 git remote set-url origin git@github.com:zkirkland/Random-Python-Tests.git 

但是这意味着你已经在你的帐户设置中发布了你的ssh公钥。

这为我工作,它也记得我的凭据:

  1. 运行gitbash

  2. 指向repo目录

  3. 运行git config --global credential.helper wincred

我认为,由于某种原因,GitHub期望URL不具有子域www。 当我使用(例如)

 git remote set-url origin https://www.github.com/name/repo.git 

它给出以下消息:

 remote: Anonymous access to name/repo.git denied fatal: Authentication failed for https://www.github.com/name/repo.git 

但是,如果我使用

 git remote set-url origin https://github.com/name/repo.git 

它工作得很好。 对我没有太大的意义…但我想记住不要把www放在GitHub仓库的远程URL中。

另请注意,GitHub存储库网页上提供的克隆URL不包含www。

如果您在input正确的密码和用户名时发现validation错误问题,那么这就是git问题。 要在你的机器上安装git时解决这个问题,取消启用git凭证pipe理器 在这里输入图像说明

可能你最近更改了密码git帐号你可以用-u选项尝试git push

 git push -u origin branch_name_that_you_want_to_push 

执行上面的命令后,它会要求input密码

希望它可以帮助你

我有同样的问题。 我以这种方式设置url:

git remote set-url origin https://github.com/zkirkland/Random-Python-Tests.git

我也从configuration文件中删除了这个条目: askpass = /bin/echo 。 然后“git push”询问我的用户名和密码,这次它工作。

我不确定我做了什么来得到这个错误,但是这样做:

 git remote set-url origin https://... 

没有为我工作。 然而:

 git remote set-url origin git@bitbucket.org:user/repo 

以某种方式工作。

从你的.config文件改变:

url = http://www.github.com/###user###/Random-Python-Tests

至:

url = http://########@github.com/###user###/Random-Python-Tests

对我而言,我忘记了我已经更改了Github.com上的密码,而且我的shell身份validation密钥链从未更新为新的密码。 从我的钥匙串中删除所有的git,然后重新运行git请求帮助解决了这个问题,再次提示我input新的密码。

只是在这里叮叮当当,对我来说固定的问题是我简单地取消了最初的提示,ssh与我的bitbucket帐户打开,我在那里input密码,一切按预期工作。

我在Windows上面临同样的问题。 由于使用了多个git账户,大部分时间我通常面临这个问题。 如果你在windows上,请以pipe理员身份打开terminal,然后再次运行命令。 确保您具有pipe理员访问权限。

我遇到了“$ git fetch致命:身份validation失败的'http:// ….”我的Windows密码已过期,并已更改。 多个提取,重新启动甚至重新安装与Windows凭据pipe理器的git没有帮助。

令人惊讶的是在这里评论的正确答案,但不是在答案(其中一些真的很奇怪!)。 你需要去控制面板 – >证书经理/ Windows凭据和更新你的密码为git: http:// yourrepoaddress

我也遇到了错误(这就是为什么我在这里降落),但没有任何build议为我工作。 这是我第一次尝试将本地Git部署到azure。 当我遇到这个错误时,经过几次尝试,我重置了我的凭据(通过点击Azure中的链接)。 问题是,在这一点上它告诉我我的用户名已被占用,所以我也改变了我的用户名到另一个。 最后,我手动删除了本地驱动器上的.git文件夹,并且没有任何问题地重新部署。

问题陈述: “git致命身份validation失败”。 我正在使用bitbucket。

解决scheme:我简单地删除了用户使用bitbucket的访问pipe理,然后添加了相同的用户。 .gitconfig文件很简单

 [user] name = BlaBla email = blabla@gmail.com [push] default = simple 

如果问题存在,请提供正确的凭据

如果你使用androidstudio 2.1testing版,然后升级到beta 2(3 MB更新文件),这对我有用

确保你有WRITE权限推送。

 read ***write*** admin