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


当前回答

除了凭据管理器中的无效凭据之外,还有另一个导致此错误的原因。

我遇到了一个问题,我的帐户使用LDAP进行身份验证,但仍然设置了密码过期日期。由于服务器被配置为只使用LDAP身份验证,密码过期在web UI中是不可见的,直到GitLab发布了13.12.2版本的安全修复后才成为一个问题。

您可以通过GitLab Rails控制台检查和编辑用户帐户的password_expires_at属性。将其设置为nil解决了这个问题,并使LDAP身份验证再次工作。

其他回答

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

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

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

我有两种方法来解决这个问题:

I added my username to the front of the remote URL (https://username@gitRepoURL) Not always the best solution; where I work, even though we're slowly moving towards using GIT, we have our applications on a network drive, so if I do this, only I can push changes even if someone else worked on a feature. I can't run git config --system --unset credential.helper from GIT Bash, so I had to open up an Admin Command Prompt and run it there (this assumes you installed GIT such that it can run from both GIT Bash and the Command Prompt). From Bash, I get a "could not lock config file" error.

当Windows凭据管理器要求您的凭据访问GitLab时,这些是您访问GitLab时使用的用户名和密码。请使用您的电子邮件和密码。

Mac用户:

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

奇怪的是,对我有效的方法是退出并重新登录到GitLab web UI。

我完全不知道为什么会这样。