不像这篇文章,我使用的是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”认证失败


当前回答

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

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

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

其他回答

Mac上的Sourcetree也有同样的问题

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

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

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

我尝试使用浏览器URL存储库

git clone $(browserURL)

它提示输入我的用户名和密码

它运行得很好

注意:不要将GitLab SSL设置和GitLab SSH密钥混合使用。

如果您在GitLab配置文件中配置的是SSH公钥,那么您的HTTPS URL将不会使用它。

关于您的HTTPS证书,请仔细检查:

禁用双因素认证,或 如果您的用户名或密码中有特殊字符,或者 如果你有一个Git凭据助手:Git config凭据。

去C:\Users\<<USER>>并删除。gitconfig文件,然后尝试一个连接到上游的命令,如git clone, git pull或git push。系统将提示您重新输入您的凭证。请这样做。

以上的解决方案都不适合我,而且我没有笔记本电脑的管理权限,但它们最终引导我找到了git工具凭据存储文档:

我的设置 Windows 10 | Git 2.18.0.windows。1 | 通过HTTPS链接克隆

如果你使用wincred作为凭据帮助器,这个解决方案是有效的:

> git config --global credential.helper
wincred

将助手更改为“缓存”应该可以达到目的,因为它会要求您再次提供凭据。要将其设置为缓存,只需输入:

> git config --global credential.helper cache

检查您的更新是否激活:

> git config --global credential.helper
cache

您现在应该能够像以前一样克隆/提取/获取。