Git推送结果“身份validation失败”
我一直在使用Github一段时间,我一直在使用git add
, git commit
和git 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公钥。
这为我工作,它也记得我的凭据:
-
运行gitbash
-
指向repo目录
-
运行
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