thumb

Після включення двофакторної аутентифікації в моїй облікового запису GitHub, коли Я запускаю команду Git git push вона видає повідомлення про помилку:

$ git push
Username for 'https://github.com': Username
Password for 'https://Username@github.com':
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/username/repository.git/'

Що викликає цю помилку

Це повідомлення про помилку говорить сама за себе. Це означає те, що ми намагаємося використовувати невірне ім’я користувача або пароль. Але Я впевнений в тому, що використовую правильне ім’я користувача і пароль. У моєму випадку, це сталося зі мною після того, як Я включив двухфакторную аутентифікацію (2FA) в моєму акаунті GitHub. Тому я знаю про те, що викликало це повідомлення про помилку.

Як це вирішити

Як тільки ми дізналися про те, що викликає збій роботи git, ми можемо використати це для вирішення проблеми. Для того, щоб вирішити цю проблему, нам потрібно всього лише створити особистий token доступу GitHub і використовувати його замість нашого пароля GitHub і двухфакторного коду аутентифікації. Тепер покрокове керівництво.


Створення token доступу до персонального доступу GitHub.

У правому верхньому куті будь-якої сторінки натисніть на фотографію свого профілю, потім натисніть Settings.

У лівій бічній панелі натисніть Developer settings.

У лівій бічній панелі натисніть Personal access tokens.

Натисніть Generate new token.

Дайте вашому token ім’я (будь-яке ім’я яке описує мету його створення).

Виберіть області дії або дозволу, які ви хочете надати цьому token. Для того, щоб використовувати ваш token для доступу до репозиторіїв з командного рядка, виберіть repo.

Натисніть Generate token.

Скопіюйте token в буфер обміну. З міркувань безпеки, після відходу зі сторінки, ви не зможете знову побачити token.

Як виправити: fatal: Authentication failed for https://github.com/

Примітка! Ставтеся до своїх token, як до паролів і тримайте їх в таємниці (якщо ви не хочете, щоб інші люди використовували API від вашого імені). При роботі з API, використовуйте token’и як змінні оточення замість hardcoding їх у ваші програми.


Використання token в командному рядку.

Як тільки у нас з’явився token, ми можемо ввести його замість нашого пароля при виконанні операцій Git через HTTPS. Просто введіть свій token після запиту пароля, а потім дивіться на те, як відбувається магія…

git push
Username: your_username
Password: your_token

Примітка! Token’и особистого доступу можуть використовуватися тільки для операцій HTTPS Git. Якщо ваше сховище використовує віддалений URL SSH, вам потрібно буде перемкнути управління з SSH на HTTPS.

Примітка! Якщо вам не буде запропоновано ввести ім’я користувача і пароль, ваші облікові дані можуть бути кешованими на вашому комп’ютері. Ви можете обновить свои учетные данные в Keychain замінити старий пароль на token.

Висновок

Ось і все, готово. Тепер проблема яка виникла після включення двофакторної аутентифікації в облікового запису GitHub усунена. Так просто, чи не так?

Якщо у вас виникають проблеми в усуненні цієї проблеми за допомогою наведеної вище інструкції, але ви змогли вирішити цю проблему будь-яким іншим способом, будь ласка, опишіть його в розділі коментарів нижче. Дякую!

Я сподіваюся, що ця стаття допомогла вам дізнатися, як вирішити проблему яка виникла після включення двофакторної аутентифікації в облікового запису GitHub. Якщо ця стаття допомогла вам вирішити проблему, будь ласка, залиште коментар :smiley:

Дякую за прочитання!