1.7 KiB
1.7 KiB
tags | ||
---|---|---|
|
Исходные данные
В корпоративном #Gitlab есть репозиторий.
В настройках аккаунта включена 2-факторная аутентификация.
origin
локального репозитория задан через https://
.
Нужно вытянуть свежие изменения из origin
в локальный реп.
Ситуация
При выполнении git pull
после ввода логина и пароля возникает ошибка:
Username for '<https://git.example.com>': %логин%
Password for '<https://user@git.example.com>': %пароль%
remote: HTTP Basic: Access denied
remote: You must use a personal access token with 'read_repository' or 'write_repository' scope for Git over HTTP.
remote: You can generate one at <https://git.example.com/profile/personal_access_tokens>
fatal: Authentication failed for '<https://git.example.com/%репозиторий%>'
Причина
При включенной #2FA нельзя напрямую использовать пароль, вместо этого придуманы личные токены доступа (Personal access tokens), все манипуляции должны происходить с его помощью.
Решение
- Создать токен, выставить права
read_repository
и/илиwrite_repository
- Для аутентификации нужно вместо пароля вводить этот токен как он есть:
Username for '<https://git.example.com>': user
Password for '<https://user@git.example.com>': %токен%
...