SourceTree продолжает запрашивать пароль Github

моя организация переключается с Bitbucket на Github для управления проектами. Сегодня я пытался перенести наш последний проект из Bitbucket в Github, используя SourceTree. Я добавил второй удаленный репозиторий в проект (используя URL-адрес целевого репозитория на Github), обновил все, а затем попытался подтолкнуть код к репозиторию. Появилось окно с запросом пароля к моей учетной записи Github. Я ввел свой (правильный) пароль и нажал "ОК", и диалоговое окно снова появилось. Я снова ввел свой пароль (правильно), и он сделал то же самое.

мой ник правильно определил, мой пароль правильный, и я попытался обновить конечно, потому что я слышал, что это была проблема с предыдущей версией. Проблема сохраняется.

Я использую SourceTree 2.3.1

9 ответов


Если вы используете двухфакторную аутентификацию с GitHub вам понадобится создайте персональный токен доступа и используйте его с SourceTree:

для работы с двухфакторной аутентификацией GitHub в SourceTree вы можете просто использовать маркер доступа вместо пароля. Шаги для этого следующие:

  1. перейти к вашей Личные Маркеры Доступа настройки в GitHub.
  2. нажмите на кнопку создать новый токен.
  3. назовите маркер чем-то описательным.
  4. выберите области, которые вы хотите предоставить этот маркер.
  5. выберите генерировать маркер.
  6. скопируйте токен и используйте его в качестве пароля в размещенных репозиториях.

вы можете найти более подробную информацию о помощь GitHub здесь.

Пользователи Mac: если ваш SourceTree продолжает запрашивать пароль, перейдите к терминалу и введите следующее:

git config --global credential.helper osxkeychain

откройте терминал и клонируйте РЕПО. хранилище URL-адрес должен быть Ваш логин, Например:

$ git clone https://<username>@github.com/<userId>/<reponame>.git
$ git clone https://mark@github.com/mak123/<reponame>.git

затем перетащите клонированную папку в окно sourceTree.Вы также можете сделать, нажав кнопку" +новый репозиторий "и в меню выбрав"добавить существующий локальный репозиторий". Он может снова просить пароль, но на этот раз он будет добавлен в ваш брелок.


решение работало для меня, учитывая Эндрю Магилл, скопированный из источника : ссылке

проблема в том, что встроенный Git-клиент SourceTree поставляется с Git-credential-manager v1.12, который больше не работает с Github, так как они отключили TLS 1.1 на своем сайте. Вам нужно получить git-credential-manager v1.14. Самый простой способ сделать это-установить текущую копию клиента Git отдельно, а затем переключить SourceTree на использование этого ("system git") вместо его встроенный клиент. Кроме того, вы можете обновить git-credential-manager во встроенном клиенте, заменив его файлы новейшей версией Microsoft.


Если вы не используете гитхаб 2-факторную авторизацию, еще одна причина для запроса вашего пароля:

Ваш url-адрес репозитория GitHub является ssh, а не https.
Поскольку git не находит ваши ssh-ключи (или ваш ssh-ключ не зарегистрирован в вашей учетной записи GitHub), он не возвращается к механизму учетной записи/пароля.

Если вы используете 2FA (и url https), то вы нужен персональный токен в качестве пароля.


в моем случае это происходило с подмодулем, который по умолчанию использовал https, хотя основной проект использовал ssh. Я исправил это, изменив путь РЕПО подмодуля в настройках репозитория SourceTree, чтобы использовать путь ssh вместо https.


У меня было подобное после обновления; я попытался повторно добавить свои учетные данные bitbucket, изменить протоколы и т. д. не повезло, пока...

  1. Я открыл свой брелок и искал bitbucket (вероятно, то же самое для github, просто найдите github вместо этого) в категории паролей.

  2. Я обнаружил, что у меня есть несколько ключей доступа для моего пользователя, поэтому я закрыл свой репозиторий, удалил все ключи типа "пароль приложения", открыл SourceTree preferences > Accounts > удалил мою учетную запись и повторно добавил ее (войти, как обычно-я использовал Basic с HTTPS).

  3. Keychain запрашивает разрешение на сохранение пароля, который я сказал "да", и теперь я вижу только один ключ типа"пароль приложения".

Я открыл свой репозиторий из браузера РЕПО и Эй престо, больше никаких всплывающих окон с паролями!

Это не давало мне покоя целую неделю! Если это тебе помогло, можешь немного потанцевать. со мной сейчас:)


SourceTree версии 2.4.8.0

проблема для меня заключалась в порядке установки между SourceTree и GitHub. Сначала я настроил SourceTree и просто щелкнул все параметры "настройка позже".

простое исправление-удаление и переустановка SourceTree. Неочевидный бит должен был удалить фактические программные файлы вручную.

из любого " SourceTree.exe " ярлык, открыть расположение файла. Мой раздвоенный на "C:\Users\myusername\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Atlassian", где ярлык указывал на другой ярлык.

откройте расположение файла этого ярлыка. В конце концов я оказался в ... C:\Users\myusername\AppData\Local\SourceTree". Удалить всю папку "программа". Поднимитесь на один уровень до "...\Local "и удалите папку "Atlassian".

теперь удалите SourceTree. Убедитесь, что ваш GitHub настроен так, как вы хотите (для меня я также создал и сохранен ключ SSH, который я использовал для настройки SourceTree). Переустановите SourceTree, используя все правильные учетные данные, укажите правильный репозиторий и тому подобное.

после всего этого SourceTree попросил мои учетные данные GitHub дважды, с двумя разными диалоговыми окнами, затем остановился и работал! Нет больше бесконечной петли. Удачи!


Если вы используете аутентификацию "имя пользователя и пароль", вы можете попробовать изменить использование SSH-ключей для проверки подлинности.

Я встречал такую ситуацию, когда я совершаю GitLab каждый раз.Когда я изменил способ аутентификации:SSH-ключейпроблема была решена.


Это то, что я обнаружил (после поиска "sourcetree" в моем диске C:):

  1. Удалить SourceTree
  2. удалить папку C:\Users[имя пользователя]\AppData\Local\Atlassian\SourceTree
  3. удалить папку C:\Users[имя пользователя]\AppData\Local\SourceTree
  4. Переустановите SourceTree