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


当前回答

试试这个:

转到:C:/Users/(YourUserName)/ 删除.gitconfig文件

其他回答

唯一对我有用的是使用https://username:Password@gitlab.com/user/projectgit而不是https://gitlab.com/user/projectgit。参见https://gitlab.com/gitlab-com/support-forum/issues/1654

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

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

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

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

仅供参考,我在生成并粘贴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

我在使用GitLab时也遇到了同样的问题,下面是我解决它的方法:

生成一个访问令牌:要做到这一点,请转到设置/访问令牌,然后给它一个名称和到期日期并提交。 在你的项目文件中打开“配置”文件。目录:/. Git /config。 你会发现这样一行: (远程“起源”) Url = https://[username]:[token]@your-domain.com/your-project.git 您将使用自己的gitlab用户名而不是[username],并且应该将[token]替换为步骤1中生成的令牌。 保存更改。

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

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.