Git push:缺少凭据或凭据无效。致命:对';的身份验证失败;https://github.com/username/repo.git'

Git push:缺少凭据或凭据无效。致命:对';的身份验证失败;https://github.com/username/repo.git',git,github,visual-studio-code,Git,Github,Visual Studio Code,我第一次尝试推出一款新的MacBook,但在git push之后出现了这个错误(在我的旧MacBook上一切都很好): 知道我为什么以及如何解决它吗?正如在的中提到的,可以取消选中设置git.terminalAuthentication) 这将避免,对于在集成终端中调用的Git命令,例如Git push,您将根据您的GitHub帐户自动进行身份验证 原始答复: 我已经使用git config user.name“您的用户名”和git config user.password“您的密码”设置了

我第一次尝试推出一款新的MacBook,但在git push之后出现了这个错误(在我的旧MacBook上一切都很好):

知道我为什么以及如何解决它吗?

正如在的中提到的,可以取消选中设置
git.terminalAuthentication

这将避免,对于在集成终端中调用的Git命令,例如
Git push
,您将根据您的GitHub帐户自动进行身份验证


原始答复:


我已经使用git config user.name“您的用户名”和git config user.password“您的密码”设置了凭据,并且可以通过运行
git config--list
来查看这些凭据,我在这里缺少什么

这些不是“凭据”:它们不会帮助您对GitHub这样的远程服务进行身份验证

对于HTTPS URL(
https://github.com//
),您需要:

  • git-config--global-credential.helper-osxkeychain
您将在此处输入您的实际凭证:

  • 您的GitHub用户帐户名
  • 您的GitHub用户帐户密码(如果您有,则为a)
但是如果这个问题今天消失了,那么这就是


还提到尝试从集成VS代码终端进行身份验证可能很棘手。
如“”所述,以及:


如果使用JSON设置文件,请在其中插入以下行:

git.terminalAuthentication: false,

如果您在linux上,只需在命令之前添加
sudo
。否则,您必须将管理前缀添加到命令。

您正试图从vscode中的终端使用git。 问题来自vscode的身份验证处理程序。 要解决这个问题:

  • 打开vscode文件>首选项>设置
  • 搜索git.terminalAuthentication
  • 取消选中该选项


您必须重新打开终端才能正常工作。

重新加载VSCode窗口(shift-control-p,然后找到
Developer:Reload window
并按Enter)为我解决了这个问题。

您必须在新笔记本电脑上设置连接到github的凭据“缺少或无效凭据”我不想急于下结论,但我猜您的凭据丢失了,或者可能无效。我已使用
git config user.name“your username”
git config user.password“your password”
,设置了凭据,并可以通过运行
git config--list
,查看这些凭据,这里缺少什么?没有这样的配置键
user.password
。请参阅。如果您使用的是集成VS代码终端(为了避免这种情况,请改用普通终端),则可能会出现以下问题:非常奇怪,在重新启动我的MacBook后,一切正常。@thinkvantagedu那么这是关于使用集成VS代码终端的情况,以下可能是问题:stackoverflow.com/a/63302881/12298276。如果您希望在将来避免这种行为,请打开JSON设置文件并在其中插入以下行:
git.terminalAuthentication:false
@AndreasL。谢谢你的反馈。我已经在答案中加入了您的评论,以获得更多的可见性。解决了我的问题,但仍然徘徊不定,这与python env(base)有任何联系吗?cz我使用的是vs代码,我不知道,但我认为这与python环境无关。这个技巧解决了我的问题。感谢这解决了问题。对于我的版本,它位于“vscode/preferences/settings;在“my host的设置:extensions/git/terminal authentication”下,有更多关于这个问题的内容:如果使用JSON设置文件,请在其中插入以下行:
git.terminalAuthentication:false
git.terminalAuthentication: false,