gitlab | git |

GitLab - Clone a repository when 2FA enabled

by Abhith RajanDecember 19, 2018 · 2 min read · Last Updated:
Share this

I love services which provide extra security. One way to provide such a level security is by using Two Factor Authentication (2FA). GitLab provides 2FA, and I enabled it. After that, cloning a repository will not work in the usual mode,

1git clone https://gitlab.com/username/projectname.git

It will result

1Cloning into 'projectname'...
2remote: HTTP Basic: Access denied
3remote: You must use a personal access token with 'api' scope for Git over HTTP.
4remote: You can generate one at https://gitlab.com/profile/personal_access_tokens
5fatal: Authentication failed for 'https://gitlab.com/username/projectname.git/'

As the response suggest, we need to create a personal access token.

Creating a personal access token

  1. Log in to your GitLab account.
  2. Go to your Profile settings.
  3. Go to Access tokens.
  4. Choose a name and optionally an expiry date for the token.
  5. Choose the desired scopes (api access).
  6. Click on Create personal access token.
  7. Save the personal access token somewhere safe. Once you leave or refresh the page, you won’t be able to access it again.

Once you have created your personal access token, try cloning by

1git clone https://oauth2:[email protected]/username/projectname.git

Replace ‘PERSONAL_ACCESS_TOKEN’ with the token you have generated.

Additional Resources

This page is open source. Noticed a typo? Or something unclear?
Improve this page on GitHub

Abhith Rajan

Written by Abhith Rajan Buy me a coffee
Abhith Rajan is an aspiring software engineer with more than 6 years of experience and proven successful track record of delivering technology-based products and services.

Related Services

Sourcetree | Free Git GUI for Mac and Windows

A Git GUI that offers a visual representation of your repositories. Sourcetree is a free Git client for Windows and Mac. It supports Git-flow out of the box.