不像这篇文章,我使用的是macOS。

我已经在GitLab中配置了密码。我也有一个SSL密钥创建后的项目是在GitLab。

当我在新项目中使用现有文件夹并执行以下步骤时,系统会提示我输入GitLab用户名和密码。

现有的文件夹

cd existing_folder
git init
git remote add origin https://gitlab.com/sobopla/Geronimod.git
git add .
git commit -m "Initial commit"
git push -u origin master

输入密码后,我得到以下错误。

remote: HTTP Basic:拒绝访问 致命:“https://gitlab.com/myname/myproject”认证失败


当前回答

在深入研究解决方案之前,让我们先看看为什么会发生这种情况。

在与git进行任何交易之前,您的机器都会对您的身份验证进行git检查

机器中存在一个SSH密钥令牌,并与git-repo共享(最优先) 或 使用用户名/密码(最常用)

为什么会发生这种情况

简单地说,发生这种情况是因为存储在机器中的凭据不是真实的,即有可能存储在机器中的密码已经从git中更改了

解决方案

前往,控制面板和搜索凭据管理器,寻找您使用git url和更改信用。

好了,这基本上适用于每一个窗口保持跟踪

其他回答

进入控制面板->凭据管理器->Windows凭据选择github或gitlab凭据并修改它。这是针对windows10的

在深入研究解决方案之前,让我们先看看为什么会发生这种情况。

在与git进行任何交易之前,您的机器都会对您的身份验证进行git检查

机器中存在一个SSH密钥令牌,并与git-repo共享(最优先) 或 使用用户名/密码(最常用)

为什么会发生这种情况

简单地说,发生这种情况是因为存储在机器中的凭据不是真实的,即有可能存储在机器中的密码已经从git中更改了

解决方案

前往,控制面板和搜索凭据管理器,寻找您使用git url和更改信用。

好了,这基本上适用于每一个窗口保持跟踪

对我来说,以下方法有效:

不要使用您的GitLab密码,而是创建一个访问令牌,并使用它代替您的密码:

在GitLab中,在右上角,点击“个人配置文件→设置→访问令牌” 创建一个新的个人访问令牌(检查api选项) Git克隆… 当要求您输入密码时,复制并粘贴访问令牌,而不是您的GitLab密码

仅供参考,我在生成并粘贴ssh_rsa后错误地使用URL时遇到了这个问题。pub到gitlab中的SSH密钥。

$ git clone http://gitlab.x
Cloning into 'start-up'...
remote: HTTP Basic: Access denied
remote: You must use a personal access token with 'api' scope for Git over HTTP.
remote: You can generate one at http://gitlab.x

通过使用下面的URL来解决。

$ git clone gitlab@gitlab.xxx.com/your_project.git

Mac上的Sourcetree也有同样的问题

处理步骤:删除keychain访问中的密码。

https://community.atlassian.com/t5/Sourcetree-questions/SourceTree-quot-fatal-Authentication-failed-for-quot/qaq-p/201844

当你尝试再按一次时,它会要求你输入密码。