不像这篇文章,我使用的是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公司实例,请确保你没有设置代理变量——例如HTTP_PROXY, HTTPS_PROXY。在经历了这个问题几乎所有的解决方案后,我发现我的问题是由这个引起的。

其他回答

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

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

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

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

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

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

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

在Gitlab中,进入管理员/设置/常规/登录限制部分。

如果您正在通过HTTPS对GitLab进行身份验证,请确保您具备:

Allow password authentication for Git over HTTP(S)

检查。此选项假设您不使用2FA。如果您不使用外部身份验证提供程序,则显示还具有:

Allow password authentication for the web interface

也检查。

我有同样的问题,我遵循这些步骤,它已经解决了。 步骤1:—设置用户名和密码 步骤2:- git push -f origin

如果您正在使用git > 2.11并使用Kerberos与Gitlab交互,则需要在本地git中设置此配置,以避免出现remote: HTTP Basic: Access denied错误。

$ git配置——global http。emptyAuth真实