不像这篇文章,我使用的是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 > 2.11并使用Kerberos与Gitlab交互,则需要在本地git中设置此配置,以避免出现remote: HTTP Basic: Access denied错误。

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

其他回答

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

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

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

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

对我来说,它是一些放在配置文件中的其他git URL,所以我手动更改了它:

移动到。git/config文件并编辑它, 删除无效的URL(如果有的话),并像下面这样粘贴有效的git SSH/HTTP URL:

[remote "origin"]
        url = git@gitlab.com:prat3ik/my-project.git

而且它真的起作用了!!

这个方法在Windows和Mac上都适用:

https://Username:accessToken@git.gitlab.com/path/to/repo/my-app.git

这里accessToken是在GitLab中创建的个人访问令牌。

每当我被迫修改Windows密码时,上面的答案都帮不了我。

试试下面对我有用的解决方案:

进入Windows凭证管理器。这是通过在EN-US Windows中按下Windows键并输入“credential”来完成的。在其他 本地化的Windows变体,您需要使用本地化术语(请参阅 一些例子的注释)。 您也可以使用快捷方式 control /name微软。运行对话框中的CredentialManager (WIN + R) 编辑Windows凭证下的git条目,替换旧的 用新密码。

Mac用户:

去钥匙链和删除gitlab帐户 转到终端的项目路径,简单地键入git pull 然后将要求您输入gitlab的用户名和密码 输入您的用户名,您将在配置文件部分的gitlab帐户中找到该用户名。 然后在这里输入您更新的密码。 开始,再次尝试推动你的代码,它可能会帮助你们。